Improve parsing of adb errors
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 35/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- android, typescript
- 領域
- mobile-dev, tooling
調査の方向性
android/utils/adb.js から始め、特に詳細なスタックトレースに示されている installApk エントリーポイントを確認し、adb のインストール出力が報告されるエラーになるまでを追跡してください。完了条件は、ERR_UNKNOWN だけでなく、具体的な INSTALL_FAILED_OLDER_SDK メッセージが返されることです。payload にテストファイル名は含まれません。
索引モデルが issue の本文から書いたものです。
説明
Version:
0.2.9
Description:
When installing an APK that requires a newer Android SDK version, an ERR_UNKNOWN error is displayed, but adb specifically displays an INSTALL_FAILED_OLDER_SDK error.
I've tried looking for the 'adb' source code in order to find a list of known errors, but I couldn't find anything, so I've created this issue in the hope that someone knows where those errors are listed so that we can improve the output in case of 'adb' errors.
Command Output:
native-run without --verbose
$ native-run android --app app-debug.apk
No hardware devices found, attempting emulator...
Selected emulator emulator-5554
Installing app-debug.apk...
ERR_UNKNOWN: Non-zero exit code from adb: 1
Default adb command output
$ adb install app-debug.apk
Performing Streamed Install
adb: failed to install app-debug.apk: Failure [INSTALL_FAILED_OLDER_SDK: Failed parse during installPackageLI: /data/app/vmdl2031034771.tmp/base.apk (at Binary XML file line #8): Requires newer sdk version #25 (current version is #24)]
Default adb command exit code
$ echo $?
1
native-run with --verbose
$ native-run android --app app-debug.apk --verbose
native-run:android:utils:sdk:resolveSDKRoot Looking for $ANDROID_HOME +0ms
native-run:android:utils:sdk:resolveSDKRoot Looking for $ANDROID_SDK_ROOT +1ms
native-run:android:utils:sdk:resolveSDKRoot Using $ANDROID_SDK_ROOT at /opt/Android/SDK +2ms
native-run:android:utils:sdk:resolveEmulatorHome Looking for $ANDROID_EMULATOR_HOME +0ms
native-run:android:utils:sdk:resolveEmulatorHome Looking at $HOME/.android +0ms
native-run:android:utils:sdk:resolveEmulatorHome Using $HOME/.android/ at /home/user/.android +0ms
native-run:android:utils:sdk:resolveAVDHome Looking for $ANDROID_AVD_HOME +0ms
native-run:android:utils:sdk:resolveAVDHome Looking at $HOME/.android/avd +0ms
native-run:android:utils:sdk:resolveAVDHome Using $HOME/.android/avd/ at /home/user/.android/avd +0ms
native-run:android:utils:sdk:getSDKPackage Parsing /opt/Android/SDK/platform-tools/package.xml +0ms
native-run:android:utils:adb:getDevices Invoking adb: '/opt/Android/SDK/platform-tools/adb' [ 'devices', '-l' ] +0ms
native-run:android:utils:adb:parseAdbDevices Parsing adb devices from output lines: [ 'List of devices attached',
native-run:android:utils:adb:parseAdbDevices 'emulator-5554 device product:sdk_google_phone_x86_64 model:Android_SDK_built_for_x86_64 device:generic_x86_64 transport_id:2',
native-run:android:utils:adb:parseAdbDevices '',
native-run:android:utils:adb:parseAdbDevices '' ] +0ms
native-run:android:utils:adb:getDeviceProperties Invoking adb: '/opt/Android/SDK/platform-tools/adb' [ '-s', 'emulator-5554', 'shell', 'getprop' ] +0ms
native-run:android:utils:adb:getDevices Found adb devices: [ { serial: 'emulator-5554',
native-run:android:utils:adb:getDevices state: 'device',
native-run:android:utils:adb:getDevices type: 'emulator',
native-run:android:utils:adb:getDevices connection: null,
native-run:android:utils:adb:getDevices properties:
native-run:android:utils:adb:getDevices { product: 'sdk_google_phone_x86_64',
native-run:android:utils:adb:getDevices model: 'Android_SDK_built_for_x86_64',
native-run:android:utils:adb:getDevices device: 'generic_x86_64',
native-run:android:utils:adb:getDevices transport_id: '2' },
native-run:android:utils:adb:getDevices manufacturer: 'unknown',
native-run:android:utils:adb:getDevices model: 'Android SDK built for x86_64',
native-run:android:utils:adb:getDevices product: 'sdk_google_phone_x86_64',
native-run:android:utils:adb:getDevices sdkVersion: '24' } ] +34ms
native-run:android:utils:avd:getAVDINIs Discovered AVD ini files: [ '/home/user/.android/avd/A10_-_Pixel_XL.ini',
native-run:android:utils:avd:getAVDINIs '/home/user/.android/avd/A7_-_Pixel_XL.ini' ] +0ms
No hardware devices found, attempting emulator...
native-run:android:utils:run:selectVirtualDevice Found running emulator: emulator-5554 +0ms
Selected emulator emulator-5554
native-run:android:utils:adb:getDeviceProperty Invoking adb: '/opt/Android/SDK/platform-tools/adb' [ '-s', 'emulator-5554', 'shell', 'getprop', 'dev.bootcomplete' ] +0ms
native-run:android:utils:adb:waitForBoot Device emulator-5554 is booted! +0ms
Installing app-debug.apk...
native-run:android:utils:adb:installApk Invoking adb: '/opt/Android/SDK/platform-tools/adb' [ '-s', 'emulator-5554', 'install', '-r', '-t', 'app-debug.apk' ] +0ms
native-run:android:utils:adb:installApk adb install: 'adb: failed to install app-debug.apk: Failure [INSTALL_FAILED_OLDER_SDK: Failed parse during installPackageLI: /data/app/vmdl1076703040.tmp/base.apk (at Binary XML file line #8): Requires newer sdk version #25 (current version is #24)]' +494ms
native-run Caught fatal error: { Error: Non-zero exit code from adb: 1
native-run at ChildProcess.p.on.code (/opt/node-global/lib/node_modules/native-run/dist/android/utils/adb.js:130:24)
native-run at ChildProcess.emit (events.js:198:13)
native-run at maybeClose (internal/child_process.js:982:16)
native-run at Socket.stream.socket.on (internal/child_process.js:389:11)
native-run at Socket.emit (events.js:198:13)
native-run at Pipe._handle.close (net.js:606:12) code: undefined, exitCode: 1, data: undefined } +0ms
ERR_UNKNOWN: Non-zero exit code from adb: 1
SDK Info:
$ native-run android --sdk-info
SDK Location: /opt/Android/SDK
AVD Home: /home/user/.android/avd
API Level: 29
Packages: Android SDK Platform 29 platforms;android-29 3
Google APIs Intel x86 Atom System Image system-images;android-29;google_apis;x86 8
Google Play Intel x86 Atom_64 System Image system-images;android-29;google_apis_playstore;x86_64 8
Sources for Android 29 sources;android-29 1
API Level: 25
Packages: Android SDK Platform 25 platforms;android-25 3
Google APIs Intel x86 Atom System Image system-images;android-25;google_apis;x86 16
Google APIs Intel x86 Atom_64 System Image system-images;android-25;google_apis;x86_64 16
Sources for Android 25 sources;android-25 1
API Level: 24
Packages: Android SDK Platform 24 platforms;android-24 2
Google APIs Intel x86 Atom System Image system-images;android-24;google_apis;x86 25
Google APIs Intel x86 Atom_64 System Image system-images;android-24;google_apis;x86_64 25
Sources for Android 24 sources;android-24 1
Tools:
Android Emulator emulator 29.2.1
Android SDK Build-Tools 29.0.2 build-tools;29.0.2 29.0.2
Android SDK Platform-Tools platform-tools 29.0.5
Android SDK Tools tools 26.1.1
SDK Patch Applier v4 patcher;v4 1
- 主要言語
- TypeScript
- スター
- 139
- フォーク
- 35
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
ionic-team/native-run のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
ionic-team/native-run#409 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 66/100
ionic-team/native-run#410 · コメント 1 件 ·
-
tools not found?オープンandroid
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
ionic-team/native-run#395 ·
-
android
難易度 3/5 1〜2日 初心者へのやさしさ 28/100
ionic-team/native-run#390 · コメント 1 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 38/100
ionic-team/native-run#389 ·
ionic-team/native-run の issue をすべて見る
似ている issue
-
難易度 1/5 1時間未満 初心者へのやさしさ 88/100
-
bug needs triage
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
DSpace/dspace-angular#6511 ·
メンテナーはふだん 1 日以内に返信
-
area: frontend area:byok bug severity:low
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
メンテナーはふだん 1 日以内に返信
-
Phone app shows Unknown for a remote machine whose key changed対応中かも @janicduplessis が今日担当しました。 オープンarea: mobile priority: P3 type: bug
難易度 1/5 1時間未満 初心者へのやさしさ 78/100
appandflow/stim#5006 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
Area - Local to Cloud Bug
難易度 2/5 1〜3時間 初心者へのやさしさ 66/100
microsoft/vscode-mssql#23209 ·
メンテナーはふだん 1 日以内に返信