2012-10-18 71 views
0

大家好,我使用这里给出What is the simplest and most robust way to get the user's current location on Android?代码即可获得当前位置,但我得到了ClassNotFoundExecption这是我的完整代码:无法解决ClassNotFoundException的问题?

// MapActivity代码:

package com.example.gmaps; 
import com.example.gmaps.MyLocation.LocationResult; 
import com.google.android.maps.MapActivity; 
import android.location.Location; 
import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 
import android.widget.Toast; 

public class MainActivity extends MapActivity { 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    LocationResult locationResult = new LocationResult(){ 
     @Override 
     public void gotLocation(Location location){ 
      //Got the location! 

      Toast.makeText(getApplicationContext(), "I got the location", Toast.LENGTH_LONG).show(); 
     } 
    }; 
    MyLocation myLocation = new MyLocation(); 
    myLocation.getLocation(MainActivity.this, locationResult); 
} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    getMenuInflater().inflate(R.menu.activity_main, menu); 
    return true; 
} 

@Override 
protected boolean isRouteDisplayed() { 
    // TODO Auto-generated method stub 
    return false; 
} 

}

和在我的位置我有相同的代码,如上面链接 这里是我的logcat

> 10-18 16:49:51.222: E/AndroidRuntime(24816): FATAL EXCEPTION: main 
10-18 16:49:51.222: E/AndroidRuntime(24816): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.gmaps/com.example.gmaps.MainActivity}: java.lang.ClassNotFoundException: com.example.gmaps.MainActivity 
10-18 16:49:51.222: E/AndroidRuntime(24816): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1993) 
10-18 16:49:51.222: E/AndroidRuntime(24816): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2104) 
10-18 16:49:51.222: E/AndroidRuntime(24816): at android.app.ActivityThread.access$600(ActivityThread.java:132) 
10-18 16:49:51.222: E/AndroidRuntime(24816): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1157) 
10-18 16:49:51.222: E/AndroidRuntime(24816): at android.os.Handler.dispatchMessage(Handler.java:99) 
10-18 16:49:51.222: E/AndroidRuntime(24816): at android.os.Looper.loop(Looper.java:137) 
10-18 16:49:51.222: E/AndroidRuntime(24816): at android.app.ActivityThread.main(ActivityThread.java:4575) 
10-18 16:49:51.222: E/AndroidRuntime(24816): at java.lang.reflect.Method.invokeNative(Native Method) 
10-18 16:49:51.222: E/AndroidRuntime(24816): at java.lang.reflect.Method.invoke(Method.java:511) 
10-18 16:49:51.222: E/AndroidRuntime(24816): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789) 
10-18 16:49:51.222: E/AndroidRuntime(24816): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556) 
10-18 16:49:51.222: E/AndroidRuntime(24816): at dalvik.system.NativeStart.main(Native Method) 
10-18 16:49:51.222: E/AndroidRuntime(24816): Caused by: java.lang.ClassNotFoundException: com.example.gmaps.MainActivity 
10-18 16:49:51.222: E/AndroidRuntime(24816): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61) 
10-18 16:49:51.222: E/AndroidRuntime(24816): at java.lang.ClassLoader.loadClass(ClassLoader.java:501) 
10-18 16:49:51.222: E/AndroidRuntime(24816): at java.lang.ClassLoader.loadClass(ClassLoader.java:461) 
10-18 16:49:51.222: E/AndroidRuntime(24816): at android.app.Instrumentation.newActivity(Instrumentation.java:1023) 
10-18 16:49:51.222: E/AndroidRuntime(24816): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1984) 
10-18 16:49:51.222: E/AndroidRuntime(24816): ... 11 more 
+0

我自己也尝试从计算器许多解决方案,但未能解决这个异常 –

+0

你在模拟器中运行..使仿真器是谷歌SDK模拟器 – Sandy09

+0

并选择谷歌Android SDK版本.. – Sandy09

回答

2

你在AndroidManifest.xml中添加了上面的代码吗?

<uses-library android:name="com.google.android.maps" /> 

您必须在应用程序标签之间添加此代码。

+0

是的,我忘了添加这个非常感谢。 BUt我无法得到我目前的位置。例外是没有更多的,我接受你的答案你会帮我为什么我无法获得我的位置? –

+0

为此,我建议您使用vogella网站(http://www.vogella.com/articles/AndroidLocationAPI/article.html,位于4.3)将其应用于您的项目。然后你可以得到你的位置 –

+0

谢谢。我会尽力告诉你 –

1

右键单击Project并转到属性 - >> java build path ..点击Libraries选项卡,然后单击Add External jar并从您的计算机中选择maps.jar ...现在转到命令并导出选项卡并勾选复选框maps.jar ....现在...清理你的项目并运行...