2011-08-02 5 views
4

次の例外は意味を持ちますか?私は原因を特定するのに苦労しています。これは、MapActivityのレイアウトにmapview要素が含まれていない場合でも、MapActivityからサブクラス化されたアクティビティ(ActivityMap)を開いたときに発生します。MapViewを使用しているときの例外 - java.lang.RuntimeException:stub

私はそれがプロジェクトの問題だと思っています。私はIntelliJ IDEAを使用しています。レベル8のMaps APIに対してプロジェクトを構築しました。 IDEは、ソースでMapActivityを使用した場合の問題を強調していないため、エラーなしでビルドされますが、実行時にこの例外が発生します。

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
> 
<com.google.android.maps.MapView 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:apiKey="<maps api key is here>" 
/> 
</LinearLayout> 

そしてアクティビティ:

public class ActivityMap extends MapActivity 
{ 
@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activitymap); 
} 

@Override 
protected boolean isRouteDisplayed() { 
    return false; 
} 

@Override 
protected boolean isLocationDisplayed() { 
    return super.isLocationDisplayed(); 
} 

}あなたは、あなたのマップの活動のxmlファイルでAPIキーを持っているshoul

java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.someapp.myapp/com.someapp.myapp.ActivityMap}: java.lang.RuntimeException: stub 
     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1569) 
     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663) 
     at android.app.ActivityThread.access$1500(ActivityThread.java:117) 
     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931) 
     at android.os.Handler.dispatchMessage(Handler.java:99) 
     at android.os.Looper.loop(Looper.java:130) 
     at android.app.ActivityThread.main(ActivityThread.java:3683) 
     at java.lang.reflect.Method.invokeNative(Native Method) 
     at java.lang.reflect.Method.invoke(Method.java:507) 
     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 
     at dalvik.system.NativeStart.main(Native Method) 
     Caused by: java.lang.RuntimeException: stub 
     at com.google.android.maps.MapActivity.<init>(Unknown Source) 
     at com.someapp.myapp.ActivityMap.<init>(ActivityMap.java:7) 
     at java.lang.Class.newInstanceImpl(Native Method) 
     at java.lang.Class.newInstance(Class.java:1409) 
     at android.app.Instrumentation.newActivity(Instrumentation.java:1021) 
     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1561) 
+0

AndroidManifest.xmlファイルにアクティビティを登録してもよろしいですか? – Pratik

+1

はい、登録されています。これは例外ではありませんが、MapActivityの代わりにActivityにアクティビティを変更するとすぐに正常に動作します。 –

+0

いくつかのコードを表示できますか? –

答えて

4

このエラーは通常、クラスパスにAndroid JARファイル(Android jarにはjunitテストパッケージ、junit.framework、junit.runnerも含まれています)を含むユニットテストを実行しているときに発生します。

しかし、ユニットテストを実行していないので、問題は別の場所にある可能性があります。

しばらく前に、私は地図を統合する方法についての記事を書いた:http://blog.doityourselfandroid.com/2011/01/18/using-google-maps-in-your-android-app/

それが詳細に必要なすべてのステップをカバーし、マップを統合する際に、いくつかの一般的なエラーの人々が持っています。

+0

プロジェクトでjunitを使用していません。 –

+0

現在プロジェクトにあるすべての依存関係を投稿できますか? – ddewaele

+1

マニフェストの権利に要素がありますか? (アプリケーションタグ内)。 – ddewaele

0

コードは大丈夫に見えます。私はあなたが他の問題を抱えていると思います。おそらくAndroidのGoogle Maps APIです新しいプロジェクトを作成してみてください。前にマップビューをやったことがありましたか?

+0

はい、以前は正常にマップを使用しました。私は私の質問で言ったように、それはビルド/プロジェクト関連の問題だと思われますが、何ですか? –

1

私は同じ問題を抱えていましたが、それはGoogle 3.0 APIの代わりにAndroid 3.0ライブラリを使用したことが原因であることが判明しました。

ライブラリを変更するにはEclipseでプロジェクトを右クリックし、[プロパティ]を選択し、Androidオプションの下でAndroid 3.0ライブラリの代わりにGoogle API(3.0用)を選択しました。

関連する問題