0

ここ数時間、Google Maps API v2 のセットアップに費やしてきました。完了したと思ったので、テストに行ってみると、私のアプリは携帯電話で動作しなくなりました。私は何をしましたか?Google マップを怒らせるために私がしたことですか?仮想デバイスのリストに自分の電話が表示され、VDK にはデバイスが有効であると表示されます。しかし、アプリを実行しても、電話で何も起こりません。LogCat に特にエラーは見られないので、何をしたかわかりません。ここに何か問題がある場合に備えて、私のmanifest.xmlファイルを次に示します。

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

<uses-sdk
    android:minSdkVersion="11"
    android:targetSdkVersion="17" />

<!-- The following are all required to used Google Maps -->
<permission
    android:name="com.example.my_app.permission.MAPS_RECEIVE"
    android:protectionLevel="signature"/>

<uses-feature
    android:glEsVersion="0x00020000"
    android:required="true"/>

<uses-permission android:name="com.example.my_app.permission.MAPS_RECEIVE"/>

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<!-- The following two permissions are not required to use
     Google Maps Android API v2, but are recommended. -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<!-- End Google maps requirements section -->

<application
    android:allowBackup="true"
    android:theme="@android:style/Theme.NoTitleBar" >


    <activity
        android:name="com.example.my_app.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>
    <activity android:name=".MyEventsListActivity"></activity>
    <activity android:name=".EventDetail"></activity>

    <activity android:name="com.google.android.gms" />

    <!-- Remove this line once the maps are working -->
    <activity android:name=".MapTest"></activity>

    <!-- Google maps API key -->
    <meta-data
        android:name="com.google.android.maps.v2.API_KEY"
        android:value="xxxxxxxxxx"/>   
</application>

</manifest>

何が起こったのか知っている人はいますか?ありがとう!

編集:いくつかの回答に基づいて、いくつかのことを明確にする必要があります。まず、私は 1 台のマシンしか使用していません。私が生成した SHA-1 フィンガープリントは、開発中のマシンとまったく同じマシンで生成されたものであるため、問題はありません。第二に、私がテストしている携帯電話は、マップをアプリケーションに統合しようとする前は問題なく動作していました。これが、マップを使用しようとする私の試みが私の携帯電話と何らかの形で競合しているのではないかと疑う理由です.

私が疑問に思っているのは、SHA-1 フィンガープリントが何らかの形で私の電話に対して有効ではないのでしょうか? 指紋が 1 台のマシンでしか有効でない場合 (そうであると私は信じています)、私の電話は2 台目のマシンと見なされますか ??? 電話は USB ケーブルを介してコンピューターに接続されており、仮想デバイス ターゲットとして実行しています。これが問題である可能性はありますか?

返信ありがとうございます。

解決策: 私はこれを理解したと思います。私の電話は Android 2.3.4 (API 10) のみを実行しています。v2 マップは最低でも API 11 で実行されるため、私の電話はその理由で認識されませんでした。minSdkVersion を 10 に変更し、さらに追加する必要がありました

私のアプリケーションノードに。表示するマップはまだ取得していませんが、機能しているようです。私は通常の Google の背景とグリッドを持っています。しかし、少なくともエラーはなく、アプリは携帯電話で再び機能しません。どんな提案でも大歓迎です。再度、感謝します!

4

2 に答える 2

1

作成した API キーは、その特定のマシンでのみ機能します。別のマシンから .apk をコンパイルしてインストールすると、マップは表示されません。

于 2013-05-14T05:16:42.673 に答える