1

新しいGoogleMapsAndroid APIV2にはGooglePlayサービスが必要ですが、地図アプリを実行するには「バックグラウンドデータ」を有効にする必要がありますか?バックグラウンドデータはバッテリーをすぐに使い果たしてしまうため、必要のないときにオフにする習慣があります。アプリでバックグラウンドデータを有効にする必要はありません。

更新:これを調査するために1日を費やしました:-Android
サポートライブラリとGoogle PlayサービスSDKをインストールします(ああ、すでにリビジョン3の更新が利用可能です)。-https://developers.google.com/maps/documentation/android/intro#sample_code >で参照されているサンプルコードをインポートします。
-新しいmapsv2APIキーを取得し、それをAndroidManifest.xmlに
配置します-サンプルコードを(再)構成し、実行/デバッグします。
Playサービスにはエミュレーターに組み込むことができないソフトウェアが必要なため、デモアプリはエミュレーターで実行されません。これを修正するには、おそらく別の機会に多くの作業が必要になるようです。そこで、Froyoを搭載したSamsungInterceptでデモを実行しました。SupportMapFragmentおよび/またはcom.google.android.gms.maps.MapViewコードを使用して、GooglePlayサービスAPKを更新しました。そのためには、「バックグラウンドデータ」(元の質問)を有効にする必要がありました。その後、アプリでさまざまなマップデモを選択できましたが、いずれもマップを表示しませんでした。
LogCatは次のことを示しています。

    12-04 19:50:28.937:I /(18909):=======チャンク:: PrintChunkBlckInfo ======
    12-04 19:50:28.937:I /(18909):libGLESv1_CM_fimg.soがアンロードされ、GLES1.1APIが正常にマップ解除されました
    12-04 19:50:34.557:I /(18909):libGLESv1_CM_fimg.soがロードされ、GLES1.1APIが正常にマッピングされました
    12-04 19:50:34.562:I /(18909):
12-04 19:50:34.562:I /(18909):[チャンクアロケータ] 1ブロック(ブロックサイズ:0x100000) 12-04 19:50:34.562:I /(18909):
12-04 19:50:34.562:I /(18909):=======チャンク:: PrintChunkBlckInfo ====== 12-04 19:50:34.562:I /(18909):
12-04 19:50:34.562:I /(18909):----------------------------------- ------------------- 12-04 19:50:34.562:I /(18909):[0]使用フラグ:1、開始:0、サイズ:1048576、次:0x0 12-04 19:50:34.562:I /(18909):
12-04 19:50:34.562:I /(18909):----------------------------------- ------------------- 12-04 19:50:34.562:I /(18909):合計テクスチャサイズ0バイト0KB合計テクスチャカウント0 12-04 19:50:34.562:I /(18909):
12-04 19:50:34.562:I /(18909):----------------------------------- ------------------- 12-04 19:50:34.937:E /(18909):glCompressedTexImage2D(0xde1、0、0x8b96、32、8、0、1280、0x0x369c70); 12-04 19:50:34.942:E /(18909):glCompressedTexImage2D(0xde1、0、0x8b96、32、8、0、1280、0x0x379b90); 12-04 19:50:34.962:E /(18909):glCompressedTexImage2D(0xde1、0、0x8b96、16、1、0、1040、0x0x347ac0);


だから今、私はまだ決定的な答えを持っていません、そして地図が表示されない理由が私のキーの生成/挿入の問題であるかどうか(LogCatでそれを示すものは何もありません)、または(より可能性が高いですか?) OpenGlの問題。

4

1 に答える 1

2

3つのことを確認する必要があります。

  1. デバイスにGoogleサービスがインストールされていますか:

    switch (GooglePlayServicesUtil.isGooglePlayServicesAvailable(this)) {
    case ConnectionResult.SUCCESS:
        //Device has Google play services installed
        break;
    
    default:
        break;
    }
    
  2. OpenGLES2.0はサポートされていますか

    private boolean checkGL20Support(Context context) {
    EGL10 egl = (EGL10) EGLContext.getEGL();
    EGLDisplay display = egl.eglGetDisplay(EGL10.EGL_DEFAULT_DISPLAY);
    
    int[] version = new int[2];
    egl.eglInitialize(display, version);
    
    int EGL_OPENGL_ES2_BIT = 4;
    int[] configAttribs = { EGL10.EGL_RED_SIZE, 4, EGL10.EGL_GREEN_SIZE, 4,
            EGL10.EGL_BLUE_SIZE, 4, EGL10.EGL_RENDERABLE_TYPE,
            EGL_OPENGL_ES2_BIT, EGL10.EGL_NONE };
    
    EGLConfig[] configs = new EGLConfig[10];
    int[] num_config = new int[1];
    egl.eglChooseConfig(display, configAttribs, configs, 10, num_config);
    egl.eglTerminate(display);
    return num_config[0] > 0;
    }
    
  3. APIキーが正しいことを確認しますi。正しいデバッグキーとパッケージを介して生成されたキーを実行しますかii。「 GoogleMapsAndroidAPIv2」ではなく「GoogleMapsAPIv2」で生成されたキーここに画像の説明を入力してください

于 2012-12-17T10:02:56.187 に答える