1

私はチームと協力して、AndroidAPIv2を使用してGoogleマップを表示できるようにしています。

私はなんとか自分の電話でコードを取得してテストしましたが、それは完璧に機能します...しかし、コードがチームメートの電話で実行されると、画面が灰色になり、次のようになります。

E/Google Maps Android API(30514): Authorization failure.

奇妙なことに、このエラーはlogcatに100%表示されず、エラーなしで灰色の画面が表示されることがあります。ちなみに私たちのコードはSVNと同期しているので、確実に更新されます。

私のAPIキーはデバッグキーから取得され、電話で完全に実行されるため、正しいことが確認されています。

正確に何がこれを引き起こしているのかわからないので、助けを求めるためにここに投稿できるコードがわかりません。それまでの間、MapFragmentクラスコードを投稿し、誰かが助けてくれることを願っています。

答えを探すためにここに投稿できるものが他にあるかどうか教えてください。できるだけ早く投稿します。ありがとう!

public class POnlineMapViewFragment extends SherlockMapFragment {

    private GoogleMap mMap;
    private double latitude;
    private double longitude;
    private String placeName;
    static Bundle bundle;
    private LatLng point;
    View v;

    @Override
    public void onCreate(Bundle savedInstanceState) {    
        super.onCreate(savedInstanceState);
        bundle = getArguments();
        if(bundle != null) {
        this.latitude = getArguments().getDouble("latitude");
        this.longitude = getArguments().getDouble("longitude");
        this.placeName = getArguments().getString("placeName");
        this.point = new LatLng(latitude,longitude);
        }
    }

    @Override
    public View onCreateView(LayoutInflater inflator, ViewGroup container, Bundle savedInstanceState) {
        View v = super.onCreateView(inflator, container, savedInstanceState);
        mMap = getMap();

        CameraUpdate center= CameraUpdateFactory.newLatLng(point);
        CameraUpdate zoom=CameraUpdateFactory.zoomTo(17);
        mMap.addMarker(new MarkerOptions().position(point).title(placeName).icon(BitmapDescriptorFactory.fromResource(R.drawable.gps_small)));


        mMap.moveCamera(center);
        mMap.animateCamera(zoom);

        return v;     

    }

    public static POnlineMapViewFragment newInstance(Bundle b) {
        POnlineMapViewFragment mapfrag = new POnlineMapViewFragment();
        mapfrag.setArguments(b);
        return mapfrag;
    } 
}
4

2 に答える 2

2

マップを使用するには、apk の生成に使用したキーストア証明書のフィンガープリント (開発環境の場合は debug.keystore) を提供することにより、Google からマップ API キーが必要です。特定の証明書のマップ API キーを取得したら、同じ証明書 debuge.keystore を使用して apk ファイルを生成し、すべてのデバイスでアプリを正常に実行する必要があります。そうしないと、灰色の四角形の空白のマップが表示されます。

  • あなたとあなたの友人が異なるマシン/PC から apk を生成している場合、同じデバッグ証明書を使用して apk ファイルを生成する必要があります
于 2013-01-28T07:18:28.380 に答える
0

私も同じ問題を抱えていました。解決策は、友人の debug.keystore ファイルを PC 上のローカルの debug.keystore ファイルに置き換えることでした。これは、キーが私の debug.keystore ファイルを使用して生成されたためです。

于 2015-03-10T08:20:49.973 に答える