Side loading instant app failed: Reading bundle timed out

倾然丶 夕夏残阳落幕 提交于 2019-12-20 02:34:48

问题


Unable to use Android Emulator, for testing the Instant Apps!! Every-time I'm getting "Side loading instant app failed: Reading bundle timed out."


I'm using, Android Studio 3.0 Canary-5

Emulator: Nexus 5X image running Android 6.0 (API level 23), x86, with Google APIs. Google APIs Intel x86 Atom System Image (Revision 21)

Note: After updating Android Studio 3.0 (Canary-4 > Canary-5) & Emulator system image from revision (20 > 21). I'm unable to run the instant App through emulator. Always I'm getting the error message saying "Side loading instant app failed: Reading bundle timed out."

com.google.android.gms.persistent E/InstantApps: DomainFilterImpl: Error while reading domain filter from WHAPI
                                                                              java.util.concurrent.ExecutionException: awjr: INVALID_ARGUMENT: Application credential header not valid. Please fix the client to pass a valid application credential header.
                                                                                  at java.util.concurrent.FutureTask.report(FutureTask.java:94)
                                                                                  at java.util.concurrent.FutureTask.get(FutureTask.java:164)
                                                                                  at tey.get(:com.google.android.gms:1)
                                                                                  at tir.a(:com.google.android.gms:25)
                                                                                  at tir.a(:com.google.android.gms:16)
                                                                                  at tir.a(:com.google.android.gms:9)
                                                                                  at tir.b(:com.google.android.gms:0)
                                                                                  at tio.b(:com.google.android.gms:0)
                                                                                  at com.google.android.gms.instantapps.routing.DomainFilterUpdateChimeraService.a(:com.google.android.gms:14)
                                                                                  at tiu.run(:com.google.android.gms:0)
                                                                                  at lhb.run(:com.google.android.gms:24)
                                                                                  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
                                                                                  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
                                                                                  at lmc.run(:com.google.android.gms:0)
                                                                                  at java.lang.Thread.run(Thread.java:818)
                                                                               Caused by: awjr: INVALID_ARGUMENT: Application credential header not valid. Please fix the client to pass a valid application credential header.
                                                                                  at awjn.c(:com.google.android.gms:0)
                                                                                  at lbb.a(:com.google.android.gms:97)
                                                                                  at tem.b(:com.google.android.gms:43)
                                                                                  at tem.a(:com.google.android.gms:0)
                                                                                  at tez.call(:com.google.android.gms:1)
                                                                                  at java.util.concurrent.FutureTask.run(FutureTask.java:237)
                                                                                  at lhb.run(:com.google.android.gms:24) 
                                                                                  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 
                                                                                  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 
                                                                                  at lmc.run(:com.google.android.gms:0) 
                                                                                  at java.lang.Thread.run(Thread.java:818) 

    W/ActivityManager: Unable to start service Intent { act=com.google.android.instantapps.devman.iapk.LOAD cmp=com.google.android.instantapps.devman/.iapk.IapkLoadService (has extras) } U=0: not found

Appreciate your help.


Update:

Found solution in Android studio release notes here. This is a known-issue under Android Studio canary-5.

Reliability issue with instant app provisioning cache. If you manually unprovision your device or emulator image for instant app development, and then deploy the instant app from Android Studio, the deployment will fail because Android Studio will not provision your device/emulator image again. To workaround for this issue: Go into the Run Configuration dialog and select the instantapp module on the left-hand pane. Click the “Instant App Provision” task under “Before launch:Gradle-aware Make, Instant App Provision” Click the edit (the pencil icon) Check “Clear provisioned devices cache”


回答1:


The device is being considered as "already provisioned for instant apps" but it's not, probably because another device with the same serial number (same emulator) was used before and modified or because the device was modified externally (not by Android Studio).

A workaround for that is to clear the cache before each run: InstantApp run configuration -> before run tasks -> provision for instant app task -> edit -> clear provisioned devices cache.




回答2:


I had a similar error when building the project using compileSDK 26 and targetSDK 26. Going back to SDK 25 and supportLibrary 25.4.0 solved the problem for me.




回答3:


devman.apk is missing under sdk/extras/google/instantapps/tools/apks/debug folder. Please sideload it manually before running your instant app:

adb install /path/to/android/sdk/extras/google/instantapps/tools/apks/release/devman.apk



回答4:


In my case the option in (in the emulator)Settings -> Google -> Instant Apps was disabled.
I manually enabled it, then it worked fine.



来源:https://stackoverflow.com/questions/44908139/side-loading-instant-app-failed-reading-bundle-timed-out

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!