[英]An error occurred while running subprocess native-run
我是 IONIC 的新手。 我正在學習它。
我正在嘗試為 android 運行 ionic 應用程序,但它給了我以下錯誤。
構建成功,但運行子進程 native-run 時出錯。
如果我為瀏覽器運行 ionic 應用程序,那就沒問題了。 沒有錯誤發生
將我的 IONIC 版本更新到 5.4.9
和平台工具到 29.0.5
錯誤變化:
[native-run] 未找到硬件設備,正在嘗試模擬器...
[native-run] 選定的模擬器 emulator-5554
[native-run]正在安裝平台\\android\\app\\build\\outputs\\apk\\debug\\app-debug.apk...
[native-run] ERR_UNKNOWN:來自 adb 的非零退出代碼:1
[ERROR] 運行子進程 native-run 時出錯。
設備離線...沒有設備連接到您的計算機或您尚未在設備上啟用調試。 如果您不在設備上運行它,請運行命令 ionic cordova run android --emulator 確保您的 android sdk 中有一個模擬器。
找了半天終於找到解決辦法:
您需要將 google-services.json 文件放在項目目錄的根目錄中。
希望它會幫助某人。
確保 native-run 可以訪問 Android SDK 和 AVD Home,如果兩者都找不到,它將不會運行:
$native-run android --sdk-info
SDK Location: /home/<username>/Android/Sdk
AVD Home: /home/<username>/.android/avd
API Level: 28
Packages: Android SDK Platform 28 platforms;android-28 6
(!) Missing Packages: Android Emulator emulator
Google Play Intel x86 Atom System Image system-images;android-28;google_apis_playstore;x86 /.+/
Tools:
Android SDK Build-Tools 28.0.3 build-tools;28.0.3 28.0.3
Android SDK Platform-Tools platform-tools 29.0.6
Android SDK Tools 26.1.1 tools 26.1.1
如果缺少 AVD Home,您應該能夠創建一個空的 avd 文件夾以使本機運行愉快:
mkdir -p $HOME/.android/avd
有時您可能沒有在您的設備上激活開發者模式。
這是用於離子應用程序
對於那些仍在尋找答案的人..就像我一樣! 我在網上嘗試了很多選項和答案,但都沒有奏效。 最后了解到這可能有很多原因,但在我的情況下,我的 AVD 中的某些內容可能已損壞。 我有離子應用程序,我解決了這個問題
刪除所有虛擬設備(AVD 管理器)
從 SDK Manager 卸載我擁有的 API
轉到您的項目目錄並運行(如果您使用電容器,這對您來說是不同的):
科爾多瓦平台刪除android
重啟電腦
重新安裝(這可能不是每個人都需要的)
閱讀此頁面並驗證您的 android studio 已安裝所有必需的軟件包或工具https://developer.android.com/studio/intro/update
科爾多瓦平台准備安卓
離子構建
離子科爾多瓦運行安卓
這是你應該看到的(伙計,很高興看到這個!):
構建以下 apk:C:\\tech\\mobile-app-dev\\budgetLenz\\platforms\\android\\app\\build\\outputs\\apk\\debug\\app-debug.apk native-run.cmd android --appplatforms \\android\\app\\build\\outputs\\apk\\debug\\app-debug.apk [native-run] 沒有找到硬件設備,正在嘗試模擬器... [native-run] Selected emulator emulator-5554 [native-run] 安裝平台\\android\\app\\build\\outputs\\apk\\debug\\app-debug.apk... [native-run] 啟動應用程序活動 com.selectsapphire.budgetlenz/com.selectsapphire.budgetlenz.MainActivity... [native-run]運行成功
對我來說是這樣的。
ionic cordova platform rm android
ionic cordova platform add android
npm i -g cordova-res
ionic cordova resources android --force
我安裝了npm i -g cordova-res
,然后是ionic cordova resources android --force
,最后是ionic cordova run android
並且它工作了。
即使我在模擬器上運行應用程序時也面臨同樣的問題。 在真實設備上運行時它工作正常。 正如我在幾個地方讀到的,這可能是由於設備中可用的存儲空間有限。 所以我清除了模擬器的內存,它工作正常。 以下是刪除模擬器內存的過程。
ionic cordova run android
從 Ionic 再次運行應用程序,然后一切正常。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.