国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

ReactNative嵌入到現有原生安卓應用

2019-11-09 17:41:40
字體:
來源:轉載
供稿:網友

嵌入到現有原生應用

嵌入到現有原生應用

簡書:React Native起步-將RN嵌入到現有的Android應用中

CSDN:Android原生嵌入React Native 過程中遇見的各種坑

build.gradle

allPRojects { repositories { mavenLocal() jcenter() maven { // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm url "$rootDir/../reactNativeTest/node_modules/react-native/android" } }}

修改app/build.gradle

ndk { abiFilters "armeabi-v7a", "x86"}compile "com.facebook.react:react-native:+"

創建 ReactActivity

package com.cyb.reactnativetestproj;import android.app.Activity;import android.os.Bundle;import android.view.KeyEvent;import com.facebook.react.ReactInstanceManager;import com.facebook.react.ReactRootView;import com.facebook.react.common.LifecycleState;import com.facebook.react.modules.core.DefaultHardwareBackBtnHandler;import com.facebook.react.shell.MainReactPackage;/** * ReactNative * Created by cyb on 2016/11/26. */public class ReactActivity extends Activity implements DefaultHardwareBackBtnHandler{ private ReactRootView mReactRootView; private ReactInstanceManager mReactInstanceManager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mReactRootView = new ReactRootView(this); mReactInstanceManager = ReactInstanceManager.builder() .setapplication(getApplication()) .setBundleAssetName("index.android.bundle") .setJSMainModuleName("index.android") .addPackage(new MainReactPackage()) .setUseDeveloperSupport(BuildConfig.DEBUG) .setInitialLifecycleState(LifecycleState.RESUMED) .build(); mReactRootView.startReactApplication(mReactInstanceManager, "reactNativeTest", null); setContentView(mReactRootView); } @Override public void invokeDefaultOnBackPressed() { super.onBackPressed(); } @Override public void onBackPressed() { super.onBackPressed(); if(mReactInstanceManager != null){ mReactInstanceManager.onBackPressed(); } } @Override protected void onResume() { super.onResume(); if(mReactInstanceManager != null){ mReactInstanceManager.onHostResume(this, this); } } @Override protected void onPause() { super.onPause(); if(mReactInstanceManager != null){ mReactInstanceManager.onHostPause(this); } } @Override protected void onDestroy() { super.onDestroy(); if(mReactInstanceManager != null){ mReactInstanceManager.onHostDestroy(this); } } //我們需要改動一下開發者菜單。默認情況下,任何開發者菜單都可以通過搖晃或者設備類觸發 // ,不過這對模擬器不是很有用。所以我們讓它在按下Menu鍵的時候可以顯示 @Override public boolean onKeyUp(int keyCode, KeyEvent event) { if(keyCode == KeyEvent.KEYCODE_MENU && mReactInstanceManager != null){ mReactInstanceManager.showDevOptionsDialog(); return true; } return super.onKeyUp(keyCode, event); }}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 阿拉善右旗| 吴江市| 邯郸县| 闵行区| 浙江省| 武穴市| 长子县| 张家界市| 镇远县| 维西| 平舆县| 临漳县| 二连浩特市| 房产| 南康市| 司法| 桃园县| 鄢陵县| 泗阳县| 鹤岗市| 吐鲁番市| 佛山市| 红河县| 历史| 牡丹江市| 乐都县| 扶余县| 广德县| 奇台县| 丰台区| 贵州省| 德昌县| 泰兴市| 泰顺县| 乌拉特前旗| 南安市| 神农架林区| 建始县| 鲁甸县| 惠来县| 理塘县|