標籤:pat 環境變數 使用者 注意 就是 bin 分享圖片 could 配置
類比機調試首先要確認你的環境變數的path中是不是有adb的路徑,adb一般在android的adk目錄下的platform-tools下,android目錄預設是在c盤user/administrator(使用者預設的話)/appdata/中
如果使用的是android studio內建的那個模擬器的話,可以這麼玩
運行
C:\Users\Administrator\AppData\Local\Android\Sdk\emulator\emulator.exe -netdelay none -netspeed full -avd Nexus4_API_27
這條命令中確保emulator.exe目錄正確,一般在android目錄中tools中或者在emulator中,像我這情況兩個目錄下都有,emulator下可以執行,另外一個不行,原因不詳。
-avd 參數後面的Nexus4_API_27是你的虛擬機器的名稱,不知道的可以去android studio中看一下。
然後就是在項目根目錄下運行react-native run-android就可以看到項目在虛擬機器上跑起來了
或者可以使用其他的安卓模擬器,我用的是夜神模擬器,
先運行一條命令
adb connect 127.0.0.1:62001
之後可以通過
adb devices 查看裝置是不是添加上了
之後
然後修改ip,ip地址是你電腦上的ipv4地址,這裡可以直接使用ipconfig命令查看到的地址,但是每次開機可能會給你分配不同的ip,可以去固定一下你的ip,去電腦上網路設定裡面找到適配器
修改ipv4的網路,這個看個人情況
之後項目根目錄下運行react-native run-android命令
可能會報一些錯誤
比如unable to load script form assets
解決辦法就是先在項目的android/app/src/mian中建立一個assets目錄
然後根目錄下運行
react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res
這裡需要注意的是,新版本reactnative 用react-native init建立的項目沒有index.android.js ,只有index.js,所以需要把index.android.js 改為index.js運行,否則會出現一系列錯誤,
例如出現could not connect to development server錯誤就可能是這個原因造成的。
成功後再運行react-native run-android,之前最好把夜神模擬器重啟一下。
網上有些部落格說運行adb命令是在夜神模擬器的bin目錄下運行,不過如果已經把android目錄下sdk下platform-tools路徑配置在環境變數中的話,就直接在任何除了夜神模擬器或其他模擬器有adb的目錄中運行adb connect命令,不然可能會報錯。
如果想要js遠端偵錯的話,就選擇debug js remotely
然後再瀏覽器輸入http://localhost:8081/debugger-ui/(一開始我用ip,但是有跨域問題)
接著再去中選擇Reload (之前我一直在瀏覽器上Ctrl+R,但是一直沒效果,找了半天結果發現就是這原因,好氣)
react native android類比機調試