내 프로덕션 버전에서이 오류가 발생되기 시작했습니다.null 객체 참조에서 Intent.migrateExtraStreamToClipData()
java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.content.Intent.migrateExtraStreamToClipData()' on a null object reference
실제로 발생하는 명확한 선은 없지만 최근 내 지원 라이브러리 버전을 24.0.0으로 변경했습니다. 여기에 전체 스택 트레이스는 다음과 같습니다
Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.content.Intent.migrateExtraStreamToClipData()' on a null object reference
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1494)
at android.app.Activity.startActivityForResult(Activity.java:3745)
at android.support.v4.app.BaseFragmentActivityJB.startActivityForResult(BaseFragmentActivityJB.java:48)
at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:75)
at android.app.Activity.startActivityForResult(Activity.java:3706)
at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:871)
at com.google.android.gms.common.internal.zzi$1.zztD(Unknown Source)
at com.google.android.gms.common.internal.zzi.onClick(Unknown Source)
at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:162)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5254)
at java.lang.reflect.Method.invoke(Method.java)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
편집 : 나는이 오류가 사용자의 100 %도 뿌리를두고 있습니다 싶습니다. 이것은 또한 23.4.0에서 발생합니다 ... 또한 Firebase와 관련하여 Base64.decode 함수와 관련이있는 잠재적 인 관련 오류가 동시에 발생했습니다.
EDIT 2 : 요 전날 Android Dev로부터 도움을 받았습니다. 그들은 프로젝트의 Google Play 서비스 버전을 업데이트 할 것을 제안했으며 지금까지 도움이 된 것 같습니다. 내 사용자로부터 결과를 얻기 위해 며칠 더 기다릴 것이지만 초기 로그는 유망하다.
이전에 9.0.2를 사용했지만 지금은 9.2.0에 있습니다.
EDIT 3 : 9.2.0으로 업데이트해도 충돌이 발생하지 않았습니다. 나는 뿌리깊은 사용자들로부터 여전히 동일한 오류를 받고있다. 나는 사용자가 Android 6.0 이하에서 충돌을 일으키고 있으므로 실제 장치를 테스트하고 최대한 빨리 업데이트 할 것이라고 언급했습니다.
내 에뮬레이터에서도 마찬가지입니다. 먼저 팝업창이 나타납니다. ... 기기에서 지원하지 않는 Google Play 서비스를 사용합니다. 도움을 받으려면 제조업체에 문의하십시오. 나는 디버깅을 시도 할 것이다. – Wirling
@Wirling 이제 오류에 대한 언급은 사용자의 기기 대신 Google의 클라우드 테스트 실험실 기기에서 발생한다고 의심됩니다. 나는 최근에이 오류를 테스트하기 위해 특별히 장치를 뿌리 째 뽑았지만 아직 팝업이 표시되지 않았다. – c0deblooded
Google Play 서비스 비전 라이브러리 (9.2)를 사용하여이를 재현 할 수 있습니다. QR 코드 감지를 위해 카메라를 시작하기 전에'isGooglePlayServicesAvailable' 메소드를 사용하여 간단한 검사를합니다. 사용할 수 없다면'getErrorDialog' 메쏘드의 대화 상자를 보여줄 것입니다. 업데이트를 시도하면 충돌이 발생합니다. 루팅 된 기기에서만 발생합니다. – Brian