programing

LowerCase에 대한 NullPointeron이지만 나는 그 방법을 어디에서도 사용하지 않습니다.

i4 2023. 6. 10. 08:18
반응형

LowerCase에 대한 NullPointeron이지만 나는 그 방법을 어디에서도 사용하지 않습니다.

Firebase Crash Reports에서 다음과 같은 크래시 덤프를 수신합니다.

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"는 어디에서도 찾을 수 없습니다.

도와주셔서 감사합니다!

편집: 이전 충돌 보고서는 보호 대상이 아니며 구글 플레이 서비스 또는 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)

아직 댓글을 달 수가 없어서 가능한 해결책으로 올리겠습니다만, 구글 측에서는 이것이 오류인 것 같습니다.여러 사람이 동일한 지역의 동일한 장치에서 이 충돌을 보고하고 있습니다.그래서 구글은 가상 또는 자동화된 장치에서 당신의 앱을 실행하고 그 장치는 충돌하는 것처럼 보입니다.이 장치는 로컬 US-US 및 API 레벨 23을 지원하는 Nexus 5x로 보입니다.

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

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

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

Stock Android 기기(MiA1)에서 앱을 실행하면 "계속 팝업이 중지됨"과 함께 충돌합니다.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)

하지만 구글 플레이 콘솔에서 릴리스 관리의 출시 전 보고서를 확인해보니 전혀 다른 이유로 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>

이 코드를 제거했는데 이제 실행 전 보고서에 픽셀 장치에서 정상적으로 작동하는 것으로 표시됩니다.

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

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

반응형