涉及位置服务的代码行会导致应用程序崩溃

时间:2013-07-09 22:02:22

标签: android

locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, locationListener);
                Location location = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
                double longitude = location.getLongitude();
                double latitude = location.getLatitude();
                if(Geocoder.isPresent()){
                Geocoder gcd = new Geocoder(context, Locale.getDefault());
                try {
                    List<Address> addresses = gcd.getFromLocation(latitude, longitude, 1);
                    if(addresses != null) {
                        Address returnedAddress = addresses.get(0);
                        StringBuilder strReturnedAddress = new StringBuilder("Address:\n");
                        for(int i=0; i<returnedAddress.getMaxAddressLineIndex(); i++) {
                            strReturnedAddress.append(returnedAddress.getAddressLine(i)).append("\n");
                        }
                     weatherLocation =  strReturnedAddress.toString();
                    }
                }
                 catch (IOException e) {

                    e.printStackTrace();
                }
                }

IDE没有错误。我已经尝试了所有我能想到的东西。每当执行此方法时,应用程序崩溃。(这是该方法中唯一的代码)

logcat的:

    07-10 00:59:37.160: I/TextToSpeech(11319): Connected to ComponentInfo{com.google.android.tts/com.google.android.tts.GoogleTTSService}
07-10 00:59:45.065: D/AndroidRuntime(11319): Shutting down VM
07-10 00:59:45.065: W/dalvikvm(11319): threadid=1: thread exiting with uncaught exception (group=0x41471930)
07-10 00:59:45.075: E/AndroidRuntime(11319): FATAL EXCEPTION: main
07-10 00:59:45.075: E/AndroidRuntime(11319): java.lang.IllegalStateException: Could not find a method registermessage(View) in the activity class com.example.realapptest1.MainActivity for onClick handler on view class android.widget.Button with id 'button1'
07-10 00:59:45.075: E/AndroidRuntime(11319):    at android.view.View$1.onClick(View.java:3593)
07-10 00:59:45.075: E/AndroidRuntime(11319):    at android.view.View.performClick(View.java:4211)
07-10 00:59:45.075: E/AndroidRuntime(11319):    at android.view.View$PerformClick.run(View.java:17362)
07-10 00:59:45.075: E/AndroidRuntime(11319):    at android.os.Handler.handleCallback(Handler.java:725)
07-10 00:59:45.075: E/AndroidRuntime(11319):    at android.os.Handler.dispatchMessage(Handler.java:92)
07-10 00:59:45.075: E/AndroidRuntime(11319):    at android.os.Looper.loop(Looper.java:137)
07-10 00:59:45.075: E/AndroidRuntime(11319):    at android.app.ActivityThread.main(ActivityThread.java:5222)
07-10 00:59:45.075: E/AndroidRuntime(11319):    at java.lang.reflect.Method.invokeNative(Native Method)
07-10 00:59:45.075: E/AndroidRuntime(11319):    at java.lang.reflect.Method.invoke(Method.java:511)
07-10 00:59:45.075: E/AndroidRuntime(11319):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795)
07-10 00:59:45.075: E/AndroidRuntime(11319):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562)
07-10 00:59:45.075: E/AndroidRuntime(11319):    at dalvik.system.NativeStart.main(Native Method)
07-10 00:59:45.075: E/AndroidRuntime(11319): Caused by: java.lang.NoSuchMethodException: registermessage [class android.view.View]
07-10 00:59:45.075: E/AndroidRuntime(11319):    at java.lang.Class.getConstructorOrMethod(Class.java:460)
07-10 00:59:45.075: E/AndroidRuntime(11319):    at java.lang.Class.getMethod(Class.java:915)
07-10 00:59:45.075: E/AndroidRuntime(11319):    at android.view.View$1.onClick(View.java:3586)
07-10 00:59:45.075: E/AndroidRuntime(11319):    ... 11 more

崩溃的Logcat。

1 个答案:

答案 0 :(得分:2)

检查您的registermessage(View ...)方法。也许你的xml / Activity中有拼写错误。如果对片段使用android:onClick="..."的布局,请记住相应的onClick方法必须在Activity中。