RN混合开发 神策SDK 中出现的addPackage记录

it2023-06-18  69

原生RN 与混合开发方式不同

1 原生-添加 RNSensorsAnalyticsPackage

在 MainApplication 的 getPackages() 方法中添加 RNSensorsAnalyticsPackage 并新增对应依赖。

import com.sensorsdata.analytics.RNSensorsAnalyticsPackage; ... public class MainApplication extends Application implements ReactApplication { ... @Override protected List<ReactPackage> getPackages() { return Arrays.<ReactPackage>asList( new RNSensorsAnalyticsPackage() ); } ... }

2 混合-添加RNSensorsAnalyticsPackage

在添加jsbundle包的地方添加

mReactInstanceManager = ReactInstanceManager.builder() .setApplication(getApplication()) // .setBundleAssetName("itsm.android.jsbundle") // .setJSMainModulePath("itsm.android") .setBundleAssetName("xxx.jsbundle") .setJSMainModulePath("xxx.android") .addPackage(new xxx()) .addPackage(new RNSensorsAnalyticsPackage()) .setUseDeveloperSupport(BuildConfig.DEBUG) .setInitialLifecycleState(LifecycleState.RESUMED) .build(); // 注意这里的MyReactNativeApp必须对应“index.android.js”中的 // “AppRegistry.registerComponent()”的第一个参数 mReactRootView.startReactApplication(mReactInstanceManager, "MobileItsm", null); setContentView(mReactRootView);

最新回复(0)