yayaa / LocationManager

Simplify getting user's location for Android
806 stars 187 forks source link

java.lang.RuntimeException #35

Closed sheddar closed 7 years ago

sheddar commented 7 years ago
20741-20741/com.yayandroid.locationmanager.sample E/AndroidRuntime: FATAL EXCEPTION: main
                                                                                       Process: com.yayandroid.locationmanager.sample, PID: 20741
                                                                                       java.lang.RuntimeException: Unable to resume activity {com.yayandroid.locationmanager.sample/com.yayandroid.locationmanager.sample.activity.SampleActivity}: java.lang.IllegalArgumentException: invalid provider: null
                                                                                           at android.app.ActivityThread.performResumeActivity(ActivityThread.java:4155)
                                                                                           at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:4245)
                                                                                           at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1838)
                                                                                           at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                                           at android.os.Looper.loop(Looper.java:158)
                                                                                           at android.app.ActivityThread.main(ActivityThread.java:7224)
                                                                                           at java.lang.reflect.Method.invoke(Native Method)
                                                                                           at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
                                                                                           at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
                                                                                        Caused by: java.lang.IllegalArgumentException: invalid provider: null
                                                                                           at android.location.LocationManager.checkProvider(LocationManager.java:1761)
                                                                                           at android.location.LocationManager.requestLocationUpdates(LocationManager.java:464)
                                                                                           at com.yayandroid.locationmanager.helper.UpdateRequest.run(UpdateRequest.java:39)
                                                                                           at com.yayandroid.locationmanager.providers.locationprovider.DefaultLocationProvider.onResume(DefaultLocationProvider.java:68)
                                                                                           at com.yayandroid.locationmanager.providers.locationprovider.DispatcherLocationProvider.onResume(DispatcherLocationProvider.java:43)
                                                                                           at com.yayandroid.locationmanager.LocationManager.onResume(LocationManager.java:161)
                                                                                           at com.yayandroid.locationmanager.base.LocationBaseActivity.onResume(LocationBaseActivity.java:62)
                                                                                           at com.yayandroid.locationmanager.sample.activity.SampleActivity.onResume(SampleActivity.java:63)
                                                                                           at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1286)
                                                                                           at android.app.Activity.performResume(Activity.java:6987)
                                                                                           at android.app.ActivityThread.performResumeActivity(ActivityThread.java:4144)
                                                                                           at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:4245) 
                                                                                           at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1838) 
                                                                                           at android.os.Handler.dispatchMessage(Handler.java:102) 
                                                                                           at android.os.Looper.loop(Looper.java:158) 
                                                                                           at android.app.ActivityThread.main(ActivityThread.java:7224) 
                                                                                           at java.lang.reflect.Method.invoke(Native Method) 
                                                                                           at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) 
                                                                                           at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120) 

It happens when the Google Api Settings Dialog is dismissed(click cancel button) and default provider starts to work. Pressing for example home button on a device and forcing activity to restart cause this error to occur.

UpdateRequest.class

 public void run() {
        locationManager.requestLocationUpdates(provider, minTime, minDistance, locationListener);
    }

provider in that case is null

yayaa commented 7 years ago

Thanks for the detailed explanation! 👍 Will handle it now

yayaa commented 7 years ago

Hey @kobasek , I just released 2.0.1 with the fix, should be available within half an hour, please test it and let me know, so i can close this issue.

sheddar commented 7 years ago

works perfect so far :)