1.下載軟件包文件並管理路徑。
2.new一個ReactNativeHost在您的應用程序:
public String mBundleFilePath = "";
private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {
@Override
protected boolean getUseDeveloperSupport() {
return BuildConfig.DEBUG;
}
@Override
protected List<ReactPackage> getPackages() {
return Arrays.asList(new MainReactPackage(), new MyReactPackage());
}
@Override
protected String getJSBundleFile() {
return mBundleFilePath;
}
};
3.before開始ReactActivity,分配烏爾捆綁文件的變量的路徑:mBundleFilePath。
public class ReactNativeActivity extends ReactActivity {
public static void launchSelf(...) {
MyApplication.getInstance().mBundleFilePath = path;
COMPONENT_NAME = ...;
Intent intent = new Intent(activity,ReactNativeActivity.class);
activity.startActivity(..);
}
...
}
源代碼:
com.facebook.react.ReactNativeHost#createReactInstanceManager
com.facebook.react.ReactInstanceManager.Builder#setJSBundleFile
com.facebook.react.cxxbridge.JSBundleLoader#createFileLoader
...
它可以幫助U:)
代碼推送是dynamicaly加載JS非常好的工具和更新發布到它 – John