1

こんにちは、Android マップ アプリのチュートリアルをいじっていますが、com.google.andoid.maps パッケージを適切にインポートしていないように見えるため、多くのエラーが発生しています。クラス。それが機能してはならない理由はありますか?

import com.google.android.maps.*;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.Window;

import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;


public class ShowTheMap extends MapActivity {

    private static double lat;
    private static double lon;
    private int latE6;
    private int lonE6;
    private MapController mapControl;
    private GeoPoint gp;
    private MapView mapView;

    private Button overlayButton, accessButton;

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);  // Suppress title bar for more space
        setContentView(R.layout.showthemap);

        // Add map controller with zoom controls
        mapView = (MapView) findViewById(R.id.mv);
        mapView.setSatellite(false);
        mapView.setTraffic(false);
        mapView.setBuiltInZoomControls(true);   // Set android:clickable=true in main.xml

        int maxZoom = mapView.getMaxZoomLevel();
        int initZoom = maxZoom-2;

        mapControl = mapView.getController();
        mapControl.setZoom(initZoom);
        // Convert lat/long in degrees into integers in microdegrees
        latE6 =  (int) (lat*1e6);
        lonE6 = (int) (lon*1e6);
        gp = new GeoPoint(latE6, lonE6);
        mapControl.animateTo(gp);    

        // Button to control food overlay
        overlayButton = (Button)findViewById(R.id.doOverlay);
        overlayButton.setOnClickListener(new OnClickListener(){      
            public void onClick(View v) {   

            }
        });

        // Button to control access overlay
        accessButton = (Button)findViewById(R.id.doAccess);
        accessButton.setOnClickListener(new OnClickListener(){      
            public void onClick(View v) {   

            }
        });

    }

    // Method to insert latitude and longitude in degrees
    public static void putLatLong(double latitude, double longitude){
        lat = latitude;
        lon =longitude;
    }

    // This sets the s key on the phone to toggle between satellite and map view
    // and the t key to toggle between traffic and no traffic view (traffic view
    // relevant only in urban areas where it is reported).

    public boolean onKeyDown(int keyCode, KeyEvent e){
        if(keyCode == KeyEvent.KEYCODE_S){
            mapView.setSatellite(!mapView.isSatellite());
            return true;
        } else if(keyCode == KeyEvent.KEYCODE_T){
            mapView.setTraffic(!mapView.isTraffic());
            mapControl.animateTo(gp);  // To ensure change displays immediately
        }
            return(super.onKeyDown(keyCode, e));
    }

    // Required method since class extends MapActivity
    @Override
    protected boolean isRouteDisplayed() {
            return false;  // Don't display a route
    }
}
4

2 に答える 2

1

プロジェクトは「Android 4.2」ではなく、プラットフォーム 4.2 の「Google API」に基づいている必要があります。

これは、プロジェクト プロパティ - Android - プロジェクト ビルド ターゲットで変更できます。

于 2013-02-18T15:12:33.813 に答える
0

これは、必要なパッケージが不足しているだけのように思えます。SDK Managerを使用して、Eclipse でGoogle APIをダウンロードしてください。

詳細については、このページをご覧ください。https://developers.google.com/android/add-ons/google-apis/installing

そのページからの簡単なスニペットは、この種の問題について言及しています

インストールする Google API アドオンを選択し、[選択したものをインストール] をクリックします。アドオンがコンピューターにダウンロードされ、SDK 環境にインストールされます。

アドオンに対して開発する準備が整ったとき。アプリケーションのプロパティを設定して、ビルド ターゲットとして Google API アドオンを使用するようにします。アプリケーションを実行するには、アドオンをターゲットとして使用する Android 仮想デバイスを作成します。アプリに適したバージョンを (API レベルごとに) 選択してください。

アプリケーションがアドオンに含まれる Maps ライブラリにアクセスできるようにするには、開発環境とランタイム環境を適切に構成する必要があります。そのためのプロセスは、マップの概要ドキュメントで説明されています。次に読む必要があります。

  1. EclipseでSDK マネージャーを開く
  2. API バージョンを確認する
  3. Google Inc による Google APIのボックスにチェックを入れます
  4. [ # 個のパッケージをインストール] をクリックします
  5. エクリプスを再起動する

例えば

ここに画像の説明を入力

その後、これらの新しいパッケージを参照するため、プロジェクトのビルド ターゲットを変更する必要があります

  1. プロジェクトを右クリック
  2. プロパティを開く
  3. Androidセクションに移動します
  4. 探している API バージョンのGoogle APIの横にあるチェックボックスをオンにします。

例えば

ここに画像の説明を入力

于 2013-02-18T15:08:34.600 に答える