1亦镶、node
Node 的版本應(yīng)大于等于 14墅冷,但是自己是WIN7系統(tǒng)晴弃,安裝不了掩幢。所以需要按照一下步驟操作:
(1)下載node 14版本逊拍,記住一定要下載ZIP結(jié)尾的,我下載的是v14.15.0版本际邻。
(2)解壓壓縮包芯丧,覆蓋替換到舊的安裝目錄。我的是C:\Program Files\nodejs
(3)打開命令行世曾,輸入 set NODE_SKIP_PLATFORM_CHECK=1缨恒,執(zhí)行它,其作用是忽略平臺審查轮听,并設(shè)置系統(tǒng)變量NODE_SKIP_PLATFORM_CHECK=1
(4)檢查node版本:node -v v14.15.0
2骗露、JDK
React Native 需要 Java Development Kit [JDK] 11,但是公司無法使用Oracle的Java蕊程,所以只能安裝openJDK椒袍,下載路徑:https://download.java.net/java/ga/jdk11/openjdk-11_windows-x64_bin.zip
(1)解壓到自己指定目錄驼唱,我的放在D:\tool\jdk-11
(2)設(shè)置系統(tǒng)變量JAVA_HOME=D:\tool\jdk-11藻茂,并加入到path中
(3)檢查版本:javac -version 顯示javac 11
3、Android Studio
(1)官網(wǎng)下載:https://developer.android.google.cn/studio/
(2)在安裝的過程中玫恳,總是要選擇java目錄辨赐,并且怎么設(shè)置都顯示找不到j(luò)ava.exe。后通過安裝了Oracle的Java之后京办,就可以順利安裝了掀序。安裝成功之后,刪除Oracle的java惭婿。
(3)打開Android Studio不恭,設(shè)置openJDK目錄:File--->Project Structure--->點擊右側(cè)的Gradle Settings--->彈框中選擇Gradle JDK的目錄為:Android Studio java home version 11 D:\tool\jdk-11
4、使用Android模擬器
首先需要創(chuàng)建一個虛擬設(shè)備财饥,創(chuàng)建好了再連接的過程中换吧,一直提示需要安裝HAXM,但是一直安裝不成功钥星,網(wǎng)上各種方法都嘗試了沾瓦,最終通過在Android Studio的安裝目錄直接點擊exe程序安裝即可,我的目錄為:D:\tool\Android SDK\extras\intel\Hardware_Accelerated_Execution_Manager中的haxm-7.6.5-setup.exe
5谦炒、啟動項目
(1)yarn android時報錯: java.io.IOException: Unable to delete directory 'D:\demo\AwesomeProject\MyTest\android\app\build\intermediates\dex\debug\mergeLibDexDebug'
error Failed to install the app. Make sure you have the Android development environment set up: https://reactnative.dev/docs/environment-setup.
Error: Command failed: gradlew.bat app:installDebug -PreactNativeDevServerPort=8081
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:dexBuilderDebug'.
> java.io.IOException: Unable to delete directory 'D:\demo\AwesomeProject\LuckProject\First\android\app\build\intermediates\project_dex_archive\debug\out'
解決:直接刪除了對應(yīng)目錄下的build文件夾
(2)再次yarn android時報錯:unable to load script make sure you're either running a metro server...
查閱文檔說是要先使用:yarn start---->又報端口占用的錯贯莺,干掉占用端口,再次yarn start宁改,項目成功啟動缕探。
6、yarn android時还蹲,node程序報錯閃退
項目之前啟動都是OK的爹耗,但是電腦強(qiáng)制重啟之后豁鲤,發(fā)現(xiàn)無法啟動了,各種網(wǎng)上給的方法都不行鲸沮,后面通過netstat -ano|findstr 8081 把端口都干掉之后琳骡,重啟就正常了,為什么會出現(xiàn)這種情況讼溺,未知楣号。。怒坯。炫狱。。
7剔猿、react-native-debugger
默認(rèn)的debugger-ui只能看一些console的內(nèi)容视译,發(fā)現(xiàn)network看不了請求信息,需要修改配置文件归敬,步驟如下:
(1)下載后打開工具酷含,在工具欄的Debugger中找到open config file打開配置文件
(2)修改配置文件中的defaultNetworkInspect選項(將永久啟用網(wǎng)絡(luò)檢查)。設(shè)置為true
(3)重新加載reload模擬器后即可查看network汪茧,成功椅亚!
8、dev server returned error code 403 react native
APP 啟動成功舱污,但是一直模擬器一直報403
(1)切換端口
yarn react-native start --port=8088
(2)成功啟動之后呀舔,在模擬器中Ctrl+M,選擇Change Bundle Location扩灯,編輯為:localhost:8088媚赖,然后reload,這時候瀏覽器可以訪問到http://localhost:8088/debugger-ui/
(3)建立連接
adb devices
建立連接:
adb -s emulator-5554 reverse tcp:8088 tcp:8088
emulator-5554 換成adb devices 的名字
(4)模擬器中reload珠插,但是報錯timeout while connecting to remote debugger
在模擬器中Ctrl+M惧磺,選擇Debug,重新bundle之后丧失,成功運行了
9豺妓、React Navigation
(1)根據(jù)React Navigation官網(wǎng)中,操作安裝指定依賴包
"@react-navigation/native": "6.0.10",
"@react-navigation/native-stack": "6.2.1",
"react-native-safe-area-context": "3.3.2",
"react-native-screens": "~3.10.1"
安裝依賴包啟動時布讹,報錯:
Execution failed for task ':app:compileDebugKotlin'.
解決:在android/build.gradle文件中琳拭,添加如下代碼:
buildscript {
ext {
kotlinVersion="1.5.31"
}
}
然后重啟,Run app描验,會報錯:Error: Error Launching activity白嘁,此時只需要點擊Run app旁邊的按鈕(Apply Changes an Restart Activity即可)