IT Share you

toLowerCase의 NullPointer이지만 그 방법은 어디에도 사용하지 않습니다.

shareyou 2020. 11. 28. 13:14
반응형

toLowerCase의 NullPointer이지만 그 방법은 어디에도 사용하지 않습니다.


Firebase 충돌 보고서에서 다음 충돌 덤프가 나타납니다.

Exception java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String java.lang.String.toLowerCase(java.util.Locale)' on a null object reference
bnp.run (bnp.java:56)
java.lang.Thread.run (Thread.java:818)

문제는 프로젝트의 어느 곳에서나 String.toLowerCase () 메서드를 사용하지 않는다는 것입니다. Android Studio에서 메서드에 대해 Edit-> Find In Path를 수행했지만 결과가 나타나지 않았지만 라이브러리에서 검색하면 100 번 이상 나타납니다. 하지만 "bnp.java"는 어디에서도 찾을 수 없습니다.

당신의 도움을 주셔서 감사합니다!

편집 : 이전 충돌 보고서는 proguard의 영향을받지 않았으며 google-play-services 또는 Firebase 때문일 수 있음을 밝혔습니다. 많은 Firebase 종속성과 함께 내 앱에서 gms : play-services-places 및 gms : play-services-auth 만 사용합니다.

Exception java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String java.lang.String.toLowerCase(java.util.Locale)' on a null object reference
bnp.run (:com.google.android.gms.DynamiteModulesC:56)
java.lang.Thread.run (Thread.java:818)

아직 댓글을 달 수 없으므로 가능한 해결책으로 게시 할 것이지만 Google 측에서는 오류 인 것 같습니다. 여러 사람이 정확히 동일한 지역의 동일한 기기에서이 충돌을보고합니다. 따라서 Google이 가상 또는 자동화 된 장치에서 앱을 실행 한 다음 해당 장치가 충돌하는 것 같습니다. 이 기기는 미국-미국 지역 및 API 레벨 23을 사용하는 Nexus 5x 인 것 같습니다.

출처 : https://code.google.com/p/android/issues/detail?id=233549


내 코드가 잘못된 URL을 사용하여 특정 amqp 서비스에 대한 연결을 만들려고 할 때이 오류가 발생했습니다. 적절한 값으로 수정하면 예외가 사라집니다. 따라서 코드를 확인하십시오.


내 앱에서 비슷한 문제가 발생했습니다.

Stock Android 기기 (Mi A1)에서 실행되면 앱이 "계속 중지 팝업"과 함께 충돌했습니다. Fabric의 Crashlytics는이를

Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String java.lang.String.toLowerCase(java.util.Locale)' on a null object reference
   at bfx.run(:com.google.android.gms.dynamite_dynamitemodulesc@13452060@13.4.52 (040708-202483333):80)
   at java.lang.Thread.run(Thread.java:818)

그러나 Google Play Console에서 출시 관리의 사전 출시 보고서를 확인했을 때 완전히 다른 이유로 Pixel 및 Pixel 2에서 앱이 다운되는 것으로 나타났습니다. 표시된 문제는

FATAL EXCEPTION: main Process: in.quickall.quickall, PID: 8345
java.lang.RuntimeException: Unable to start activity ComponentInfo{in.quickall.quickall/in.quickall.quickall.Main.MainActivity}: android.content.res.Resources$NotFoundException: Drawable in.quickall.quickall:drawable/splash_screen with resource ID #0x7f0700c0
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2817)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2892)
    at android.app.ActivityThread.-wrap11(Unknown Source:0)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1593)
    at android.os.Handler.dispatchMessage(Handler.java:105)
    at android.os.Looper.loop(Looper.java:164)
    at android.app.ActivityThread.main(ActivityThread.java:6541)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)

그리고 APK 버전에서 시작된 문제는 실행시 흰색 화면을 제거하는 코드 (아래에 제공됨)를 구현 한 것입니다.

<style name="SplashTheme" parent="AppTheme">
    <item name="android:windowBackground">@drawable/splash_screen</item>
</style>

이 코드 조각을 제거했으며 이제 사전 출시 보고서에 Pixel 장치에서 제대로 작동하는 것으로 표시됩니다.

이제 앱이 올바르게 시작되지만 시작시 흰색 화면이 표시되어야합니다.

참고 URL : https://stackoverflow.com/questions/43009734/nullpointer-on-tolowercase-but-i-dont-use-that-method-anywhere

반응형