一、兩種方式運行程序
1、指令運行:react-native run-android。運行結果如下圖
二:直接通過android studio運行
二、遇到的問題
1、unable to load script.make sure you're either running a metro server。如下圖所示。
a:通過指令啓動時沒有啓動metro server
解決方法:
1:運行 adb reverse tcp:8081 tcp:8081
2:重新執行命令:react-native run-android
注意:當該控制檯起來之後,且不消失,程序運行成功。
b:通過as啓動時沒有index.android.bundle文件
解決方法:
1 :項目中在android/app/src/main/創建文件夾 assets
2 :運行指令:
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res
3:然後會在assets生成文件 index.android.bundle
4:然後通過as運行即可。
2、當運行生成index.android.bundle文件的指令時出現如下錯誤。
error Invalid regular expression: /(.*\\__fixtures__\\.*|node_modules[\\\]react[
\\\]dist[\\\].*|website\\node_modules\\.*|heapCapture\\bundle\.js|.*\\__tests__\
\.*)$/: Unterminated character class. Run CLI with --verbose flag for more detai
ls.
這是由於node.js版本引起的,適當降低版本即可。當不願意降低版本的時候。
修改 'root'\node_modules\metro-config\src\defaults\blacklist.js文件
/node_modules[/\\]react[/\\]dist[/\\].*/,改爲
/node_modules[\/\\]react[\/\\]dist[\/\\].*/,