2

Google API のサンプル コードを実行すると強制終了エラー メッセージが表示されました。プロジェクトの更新はこのタイプのプロジェクトに対する解決策ですか? もしそうなら、ウィンドウでプロジェクトを更新する方法。ここに記載されている方法は私の場合には機能しません。

ここにコードがあります

ファイル名:HelloGoogleMaps.java

    package com.hellogooglemaps.practices;

    import com.google.android.maps.MapActivity;
    import com.google.android.maps.MapView;
    import android.os.Bundle;


    public class HelloGoogleMaps extends MapActivity {
     /** Called when the activity is first created. */
  @Override
   protected boolean isRouteDisplayed(){
    return false;
}

@Override 
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    MapView mapView = (MapView)findViewById(R.id.mapview);
    mapView.setBuiltInZoomControls(true);

}
@Override
protected boolean isLocationDisplayed(){
    return true;
}
}

こんにちはGoogleMapsマニフェスト

<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.INTERNET"/>
<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >
    <activity
        android:label="@string/app_name"
        android:name=".HelloGoogleMapsActivity" >
        <intent-filter >
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>        
    </activity>
    <activity android:name=".HelloGoogleMaps" android:label="@string/app_name"
          android:theme="@android:style/Theme.NoTitleBar" />
    <uses-library android:name="com.google.android.maps"/>
</application>

main.xml

    <?xml version="1.0" encoding="utf-8"?>
    <com.google.android.maps.MapView
     xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/mapview"
             android:layout_width="fill_parent"
             android:layout_height="fill_parent"
             android:clickable="true"
             android:apiKey="0_hYeORLgQUROOOr_RXN2TWG2u2pCDoBYfLCV_w"
             />
4

2 に答える 2

1

コードで述べたように、呼び出されるアクティビティは 1 つだけで、2 つのアクティビティが宣言さHelloGoogleMapsれていますAndroidManifest!! あなたHelloGoogleMapsActivityは駄目です。HelloGoogleMapsActivity を Launcher アクティビティとして設定し、このアクティビティが存在しないため、エラーが発生しています!!

解決策:そのように 変更するAndroidManifest.xmlと、マップの apikey を正しく取得できた場合、アプリが機能するようになります。

<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.INTERNET"/>
<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >
    <activity
        android:label="@string/app_name"
        android:theme="@android:style/Theme.NoTitleBar"
        android:name=".HelloGoogleMaps" >
        <intent-filter >
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>        
    </activity>
    <uses-library android:name="com.google.android.maps"/>
</application>
于 2012-07-08T08:06:20.700 に答える
0

Force close Error何度も直面した後、私が見つけたのは、これらのタイプのエラーが非常に一般的でありundefined behavioral、ボタンを宣言し、それにビューを割り当てずに別の関数で使用する.Likeが原因であるということです。例外を正しく処理していないためにも表示されます。またはリソースが利用できないため、連絡先番号などのエミュレーターでアクセスしようとしています。この種の問題を解決する最善の方法は、ログを使用して、わかりにくい場所にメッセージを出力し、logcat を使用することです。

上記の場合、 HelloGoogleMapsActivityクラスの未定義の動作が原因で強制終了エラーを受け取りました

于 2012-09-25T04:11:56.763 に答える