2013-03-25 40 views
2

我想創建一個應用程序位置,但它顯示我錯誤the application of gmaps (com.formation.gmaps) has stopped unexpectedly應用程序gmaps(com.formation.gmaps)已經意外停止

請注意,我已經卸載了eclipse,但總是出現此錯誤。

這是我的錯誤日誌:

03-25 14:21:59.914: E/AndroidRuntime(431): FATAL EXCEPTION: main 
03-25 14:21:59.914: E/AndroidRuntime(431): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.formation.gmaps/com.formation.gmaps.MainActivity}: java.lang.ClassNotFoundException: com.formation.gmaps.MainActivity in loader dalvik.system.PathClassLoader[/data/app/com.formation.gmaps-1.apk] 
03-25 14:21:59.914: E/AndroidRuntime(431): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2585) 
03-25 14:21:59.914: E/AndroidRuntime(431): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) 
03-25 14:21:59.914: E/AndroidRuntime(431): at android.app.ActivityThread.access$2300(ActivityThread.java:125) 
03-25 14:21:59.914: E/AndroidRuntime(431): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) 
03-25 14:21:59.914: E/AndroidRuntime(431): at android.os.Handler.dispatchMessage(Handler.java:99) 
03-25 14:21:59.914: E/AndroidRuntime(431): at android.os.Looper.loop(Looper.java:123) 
03-25 14:21:59.914: E/AndroidRuntime(431): at android.app.ActivityThread.main(ActivityThread.java:4627) 
03-25 14:21:59.914: E/AndroidRuntime(431): at java.lang.reflect.Method.invokeNative(Native Method) 
03-25 14:21:59.914: E/AndroidRuntime(431): at java.lang.reflect.Method.invoke(Method.java:521) 
03-25 14:21:59.914: E/AndroidRuntime(431): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 
03-25 14:21:59.914: E/AndroidRuntime(431): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 
03-25 14:21:59.914: E/AndroidRuntime(431): at dalvik.system.NativeStart.main(Native Method) 
03-25 14:21:59.914: E/AndroidRuntime(431): Caused by: java.lang.ClassNotFoundException: com.formation.gmaps.MainActivity in loader dalvik.system.PathClassLoader[/data/app/com.formation.gmaps-1.apk] 
03-25 14:21:59.914: E/AndroidRuntime(431): at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243) 
03-25 14:21:59.914: E/AndroidRuntime(431): at java.lang.ClassLoader.loadClass(ClassLoader.java:573) 
03-25 14:21:59.914: E/AndroidRuntime(431): at java.lang.ClassLoader.loadClass(ClassLoader.java:532) 
03-25 14:21:59.914: E/AndroidRuntime(431): at android.app.Instrumentation.newActivity(Instrumentation.java:1021) 
03-25 14:21:59.914: E/AndroidRuntime(431): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2577) 
03-25 14:21:59.914: E/AndroidRuntime(431): ... 11 more 

這是MainActivity.java

package com.formation.gmaps; 

import android.os.Bundle; 
import android.view.Menu; 

import com.google.android.maps.MapActivity; 

public class MainActivity extends MapActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.activity_main, menu); 
     return true; 
    } 

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

} 

這是AndroidManifest.xml中:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.formation.gmaps.MainActivity" 
    android:versionCode="1" 
    android:versionName="1.0" > 

    <uses-sdk 
     android:minSdkVersion="8" 
     android:targetSdkVersion="8" /> 
    <uses-permission android:name="android.permission.INTERNET"/> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 
    <uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION"/> 
    <uses-permission android:name="android.permission.ACCESS_GPS"/> 
    <uses-permission android:name="android.permission.ACCESS_ASSISTED_GPS"/> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 


    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 
     <activity 
      android:name="com.formation.gmaps.MainActivity" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
    </application> 

</manifest> 
+0

你可以發佈你的MainActivity.java代碼嗎? – sebster 2013-03-25 19:34:28

回答

1

系統無法找到MainActivity。 com.formation.gmap中的類s包。這可以由許多原因引起,但你可以檢查,如果

你在你的AndroidManifest.xml中聲明你的活動com.formation.gmaps.MainActivity

2.您的MainActivity.java在文件頂部設置了正確的軟件包名稱(例如package com.formation.gmaps)。

你應該有import com.formation.gmaps.R;

4.使用快捷鍵Ctrl + Shift + O在Eclipse。這將導入任何缺失的類。

5.項目 - >清潔也可以幫助(提供您使用Eclipse)。


編輯

在AndroidManifest.xml中改變package="com.formation.gmaps.MainActivity"package="com.formation.gmaps"


編輯02

你的問題是你MapActivity.java。 閱讀this。如果你使用了最新的API,然後這一段解釋它:

因爲地圖被封裝在MapFragment類,可以 通過擴展Android標準Activity類, 而不是擴展版本1中使用的MapActivity實現它們

所以請檢查一下你的MapActivity.class。如果它擴展了片段,那麼問題就在那裏。您可以通過將MainActivity更改爲擴展區而不是MapActivity來測試此操作。不要忘記添加import android.app.Activity;

如果您仍在使用地圖V1,請閱讀我提供的鏈接上的文檔並切換到V2。您可能仍然在使用需要導入maps.jar的舊版本。

This也可能對您有所幫助。

祝你好運,讓我們知道如果你遇到更多的麻煩。

+0

感謝您的幫助,我將發佈MainActivity.java – user2207848 2013-03-25 20:03:05

+0

我找不到錯誤:( – user2207848 2013-03-25 20:35:18

+0

我編輯了我的答案。請檢查列表中的第3個數字。您必須導入您的R.java,否則您將沒有權限訪問你在整個項目中聲明的資源,讓我知道它是否有效 – sebster 2013-03-25 21:15:42