Skip to content
This repository has been archived by the owner on Apr 12, 2023. It is now read-only.

[Android] 言語設定を変えてCOCOAを開くとApiExceptionが発生することがある #987

Closed
keiji opened this issue Apr 22, 2022 · 2 comments · Fixed by #989
Closed
Assignees
Labels
bug バグ。本来あるべき動作をしていないもの waiting-for-confirmation 関係者に確認中のもの
Projects

Comments

@keiji
Copy link
Collaborator

keiji commented Apr 22, 2022

不具合の内容 / Describe the bug

言語設定を変えて(厳密に言うとCHANGE_CONFIGURATIONを発生させて)、すぐにCOCOAを開くとApiExceptionが発生することがある。

再現手順 / Steps to reproduce

  1. '設定'の言語切り替えに行き、
  2. 端末の設定源を変更して、
  3. COCOAを開くと(またはタスクをCOCOAに戻すと)、
  4. エラーが発生します。

期待される挙動 / Expected behavior

エラーが発生しない。

スクリーンショット / Screenshots

device-2022-04-22-103029.mp4

動作環境 / Environments

  • デバイス:Pixel 3, Pixel 4a, Pixel 5a
  • OS:Android
  • バージョン:v2.0.0

その他 / Additional context

エラーログ

おそらく、Change ConfigurationのタイミングでGoogle Play Servicesの再初期化が走り、サービスとの接続が失われるのでApiExceptionが発生。再接続しようとしても初期化が完了して折らず、サービスに接続できずにApiExceptionが発生している。

04-22 09:57:54.474 10762 10762 E AndroidRuntime: FATAL EXCEPTION: main
04-22 09:57:54.474 10762 10762 E AndroidRuntime: Process: jp.go.mhlw.covid19radar, PID: 10762
04-22 09:57:54.474 10762 10762 E AndroidRuntime: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
04-22 09:57:54.474 10762 10762 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:558)
04-22 09:57:54.474 10762 10762 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)
04-22 09:57:54.474 10762 10762 E AndroidRuntime: Caused by: java.lang.reflect.InvocationTargetException
04-22 09:57:54.474 10762 10762 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
04-22 09:57:54.474 10762 10762 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
04-22 09:57:54.474 10762 10762 E AndroidRuntime: 	... 1 more
04-22 09:57:54.474 10762 10762 E AndroidRuntime: Caused by: com.google.android.gms.common.api.ApiException: 20: The connection to Google Play services was lost due to service disconnection.
04-22 09:57:54.474 10762 10762 E AndroidRuntime: 	at com.google.android.gms.common.api.internal.zaaa.zah(com.google.android.gms:play-services-base@@17.6.0:12)
04-22 09:57:54.474 10762 10762 E AndroidRuntime: 	at com.google.android.gms.common.api.internal.zaaa.zae(com.google.android.gms:play-services-base@@17.6.0:7)
04-22 09:57:54.474 10762 10762 E AndroidRuntime: 	at com.google.android.gms.common.api.internal.zabl.zaC(com.google.android.gms:play-services-base@@17.6.0:3)
04-22 09:57:54.474 10762 10762 E AndroidRuntime: 	at com.google.android.gms.common.api.internal.zabl.onConnectionSuspended(com.google.android.gms:play-services-base@@17.6.0:2)
04-22 09:57:54.474 10762 10762 E AndroidRuntime: 	at com.google.android.gms.common.internal.zah.onConnectionSuspended(com.google.android.gms:play-services-base@@17.6.0:1)
04-22 09:57:54.474 10762 10762 E AndroidRuntime: 	at com.google.android.gms.common.internal.zzb.handleMessage(com.google.android.gms:play-services-basement@@17.6.0:25)
04-22 09:57:54.474 10762 10762 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:106)
04-22 09:57:54.474 10762 10762 E AndroidRuntime: 	at android.os.Looper.loopOnce(Looper.java:201)
04-22 09:57:54.474 10762 10762 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:288)
04-22 09:57:54.474 10762 10762 E AndroidRuntime: 	at android.os.HandlerThread.run(HandlerThread.java:67)
04-22 09:58:13.755 11805 11805 E AndroidRuntime: FATAL EXCEPTION: main
04-22 09:58:13.755 11805 11805 E AndroidRuntime: Process: jp.go.mhlw.covid19radar, PID: 11805
04-22 09:58:13.755 11805 11805 E AndroidRuntime: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
04-22 09:58:13.755 11805 11805 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:558)
04-22 09:58:13.755 11805 11805 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)
04-22 09:58:13.755 11805 11805 E AndroidRuntime: Caused by: java.lang.reflect.InvocationTargetException
04-22 09:58:13.755 11805 11805 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
04-22 09:58:13.755 11805 11805 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
04-22 09:58:13.755 11805 11805 E AndroidRuntime: 	... 1 more
04-22 09:58:13.755 11805 11805 E AndroidRuntime: Caused by: com.google.android.gms.common.api.ApiException: 8: chaf: Timed out: chab@61565c6[status=PENDING]
04-22 09:58:13.755 11805 11805 E AndroidRuntime: 	at com.google.android.gms.common.api.internal.TaskUtil.trySetResultOrApiException(com.google.android.gms:play-services-base@@17.6.0:3)
04-22 09:58:13.755 11805 11805 E AndroidRuntime: 	at com.google.android.gms.internal.nearby.zzao.onResult(com.google.android.gms:play-services-nearby@@18.1.1:1)
04-22 09:58:13.755 11805 11805 E AndroidRuntime: 	at com.google.android.gms.common.api.internal.IStatusCallback$Stub.zaa(com.google.android.gms:play-services-base@@17.6.0:2)
04-22 09:58:13.755 11805 11805 E AndroidRuntime: 	at com.google.android.gms.internal.base.zab.onTransact(com.google.android.gms:play-services-base@@17.6.0:3)
04-22 09:58:13.755 11805 11805 E AndroidRuntime: 	at android.os.Binder.execTransactInternal(Binder.java:1184)
04-22 09:58:13.755 11805 11805 E AndroidRuntime: 	at android.os.Binder.execTransact(Binder.java:1143)

ApiExceptionをENExceptionに変換しておく必要がある。Cappuccino側の改修が必要になるかも。

@keiji keiji added bug バグ。本来あるべき動作をしていないもの waiting-for-confirmation 関係者に確認中のもの labels Apr 22, 2022
@keiji
Copy link
Collaborator Author

keiji commented Apr 22, 2022

やっぱりCappuccino側で対応が必要。

@keiji
Copy link
Collaborator Author

keiji commented Apr 22, 2022

#816 の再現方法が確立したと言うことでもある。

@keiji keiji self-assigned this May 2, 2022
@ghost ghost closed this as completed in #989 May 19, 2022
@keiji keiji added this to Done in v2.0.1 Jun 8, 2022
This issue was closed.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug バグ。本来あるべき動作をしていないもの waiting-for-confirmation 関係者に確認中のもの
Projects
Development

Successfully merging a pull request may close this issue.

1 participant