除了方框和缩放按钮外,Google地图不会显示在Android-not display map中

时间:2013-08-16 11:26:48

标签: android google-maps google-maps-android-api-2

我使用谷歌地图api开发了一个Android应用程序。我创建并使用了一个api键,但是地图没有按预期显示/可见。灰色标题&缩放按钮显示/可见。

我遵循了Link

我的申请是未签名的申请。

此映射文件位置(包)在com.xont.hema6.controller.sale中可用,但主包是com.xont.hema6.controller。需要为密钥指定哪一个?

我的代码是:

   public class RetailerMapActivity extends FragmentActivity{
GoogleMap map;
ArrayList<LatLng> markerPoints;

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    markerPoints = new ArrayList<LatLng>();
    SupportMapFragment fm = (SupportMapFragment)getSupportFragmentManager().findFragmentById(R.id.map);
    map = fm.getMap();

}

这是我的xml

  <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".sale.RetailerMapActivity" >   

<fragment 
    android:id="@+id/map"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"        
    class="com.google.android.gms.maps.SupportMapFragment" />   

AndroidMainfest文件权限

<uses-feature android:glEsVersion="0x00020000" android:required="true"/>
<permission  android:name="com.xont.hema6.controller.sale.permission.MAPS_RECEIVE"  android:protectionLevel="signature" />
<uses-permission android:name="com.xont.hema6.controller.sale.permission.MAPS_RECEIVE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.INTERNET" />
 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_GPS"></uses-permission>
  <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

内部申请

<meta-data android:name="com.google.android.maps.v2.API_KEY"    android:value="AIza**CD3c**JoP27sH_EsGTR7ul***w_G3pS7o"/>

http://wptrafficanalyzer.in/blog/drawing-driving-route-directions-between-two-locations-using-google-directions-in-google-map-android-api-v2/

请有人建议我的代码有什么问题。

2 个答案:

答案 0 :(得分:2)

可能是你的问题是你正在使用

1)Wrong Package name
or
2)Wrong SHA1
or
3)Wrong API V2 key

转到您的清单文件,查看您的包裹名称。

1) Goto command prompt and type this command

    keytool -list -v -keystore "C:\Documents and
    Settings\<your_user_name>\.android\debug.keystore" -alias androiddebugkey -
    storepass android -keypass android

Get your SHA1 key

2) Goto Google API console switch on Google Maps API V2 and create new Android key.

Give your_SHA1key;your_packagename

3)Take API V2 key paste into your manifest file and run 

enter image description here

答案 1 :(得分:1)

转到您的清单文件,使用此软件包名称查看您的软件包名称,您必须创建Google Maps API V2密钥并使用

前:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.venky.loadgooglemapsdemo"
    android:versionCode="1"
    android:versionName="1.0" >

我的包名是“com.venky.loadgooglemapsdemo”

如果您需要教程和演示,请参阅此link