Skip to main content

f8-features-sdkmanager-workflow

Use when implementing or troubleshooting SDKManager feature workflows — native platform integration, login, pay, ads, and platform-specific setup in F8Framework.

Source facts

Repository
TippingGame/F8Framework
Last source activity
April 1, 2026 at 11:00
Detected SKILL.md language
English
Stars
886
Forks
141

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

File Explorer
2 files

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
f8-features-sdkmanager-workflow
description
Use when implementing or troubleshooting SDKManager feature workflows — native platform integration, login, pay, ads, and platform-specific setup in F8Framework.
# SDKManager Feature Workflow > **⚠️ IMPORTANT**: Before using this feature, you **MUST** formally initialize F8Framework in the launch sequence. Ensure `ModuleCenter.Initialize(this);` has run first, then create the required module, for example `FF8.SDK = ModuleCenter.CreateModule<SDKManager>();`. ## Use this skill when - The task is about SDK integration for Android, iOS, WebGL, or mini-games. - The user asks about login, payment, ads, or native platform interaction. - Setting up Jenkins CI/CD for automated builds. ## Path resolution 1. Prefer project source at Assets/F8Framework. 2. For usage docs, read: Assets/F8Framework/Tests/SDKManager/README.md ## Sources of truth - Runtime module: Assets/F8Framework/Runtime/SDKManager - Android plugins: Assets/F8Framework/Runtime/SDKManager/Plugins_Android - iOS plugins: Assets/F8Framework/Plugins/iOS/SDKManager - Test docs: Assets/F8Framework/Tests/SDKManager ## Key classes and interfaces | Class | Role | |-------|------| | `SDKManager` | Core module. Access via `FF8.SDK`. | ## API quick reference ```csharp FF8.SDK.SDKStart("platformId", "channelId"); // Initialize SDK FF8.SDK.SDKLogin(); // Login FF8.SDK.SDKLogout(); // Logout FF8.SDK.SDKSwitchAccount(); // Switch account FF8.SDK.SDKLoadVideoAd("adId", "adType"); // Load video ad FF8.SDK.SDKShowVideoAd("adId", "adType"); // Show video ad FF8.SDK.SDKPay("serverNum", "serverName", "playerId", "playerName", "amount", "extra", "orderId", "productName", "productContent", "playerLevel", "sign", "guid"); // Payment FF8.SDK.SDKUpdateRole("scenes", "serverId", "serverName", "roleId", "roleName", "roleLevel", "roleCTime", "rolePower", "guid"); // Update user info FF8.SDK.SDKExitGame(); // Exit game FF8.SDK.SDKToast("Native Toast"); // Native toast ``` ## Platform setup ### Android 1. Choose correct Gradle version directory based on Unity version. 3. Add `.xml` and `.aar` extensions respectively. 4. Rebuild when switching Unity versions. 5. Android Gradle version support: 6.1.1 (2021/2022), 7.6 (2023), 8.1+ (Unity 6). ### iOS - Modify `F8SDKInterfaceUnity.h` and `F8SDKInterfaceUnity.mm` for SDK integration. ### WebGL - Cannot use sync AB loading. Use Resources for sync or async AB. - Configure in F5: enable MD5 AB names, force remote loading, disable cache on WebGL. ### WeChat Mini Games - Remove `LitJson.dll` from WX-WASM-SDK-V2. 2. Add F8Framework `LitJson` reference to WX assemblies. 3. Configure CDN address and Bundle Path Identifier (default `StreamingAssets`, change to `AssetBundles`). 4. Enable "Force Remote Loading" and "Disable Cache" in F5 build tool for mini-games. ### Jenkins CI 1. Install Java SDK + Jenkins. 2. Install Unity3d plugin in Jenkins. 3. Configure Unity path in Jenkins Tools. 4. Copy `config.xml` to Jenkins job directory. 5. Configure build parameters matching F5 build tool settings. ## Workflow 1. Call `SDKStart()` to initialize the platform SDK. 2. Implement login flow with `SDKLogin()`. 3. Handle payment via `SDKPay()` with server verification. 4. Show ads via `SDKLoadVideoAd()` + `SDKShowVideoAd()`. 5. Update user info with `SDKUpdateRole()` for analytics. 6. For platform-specific deployment, follow per-platform setup above. ## Common error handling | Error | Cause | Solution | |-------|-------|----------| | Android build fails | Wrong Gradle/AAR version | Match Gradle version to Unity version | | iOS callback not received | Missing .mm implementation | Check F8SDKInterfaceUnity.mm | | WebGL AB load fails | Sync loading not supported | Use async loading or Resources | | WeChat LitJson conflict | Duplicate LitJson.dll | Remove from WX-WASM-SDK-V2 | ## Cross-module dependencies - **Build**: SDK setup affects build configuration. - **AssetManager**: WebGL/mini-game asset loading has special requirements. ## Output checklist - Platform SDK initialized. - Native integration files configured. - Platform-specific build tested. - Validation status and remaining risks.
View on GitHub