2013-04-11 114 views
-1

地图仅显示平铺视图。发布更新版本后,地图不可见。更新生产版本后未显示Android地图。只显示地图图块?

以下是发布到产品时清单文件版本更改的详细信息。

当我发布的版本进行生产首次与

versionCode = "1" 
versionName = "1.0" 

地图是工作的罚款。

但是,当我更新生产版本最近与keystore相同的应用程序不显示地图。

versionCode = "2" 
versionName = "1.1" 

虽然我尝试调试应用程序我有以下错误报告:

04-10 02:55:24.935: W/System.err(8509): IOException processing: 26 
04-10 02:55:24.935: W/System.err(8509): java.io.IOException: Server returned: 3 
04-10 02:55:24.940: W/System.err(8509):  at android_maps_conflict_avoidance.com.google.googlenav.map.BaseTileRequest.readResponseData(BaseTileRequest.java:115) 
04-10 02:55:24.940: W/System.err(8509):  at android_maps_conflict_avoidance.com.google.googlenav.map.MapService$MapTileRequest.readResponseData(MapService.java:1473) 
04-10 02:55:24.940: W/System.err(8509):  at android_maps_conflict_avoidance.com.google.googlenav.datarequest.DataRequestDispatcher.processDataRequest(DataRequestDispatcher.java:1117) 
04-10 02:55:24.945: W/System.err(8509):  at android_maps_conflict_avoidance.com.google.googlenav.datarequest.DataRequestDispatcher.serviceRequests(DataRequestDispatcher.java:994) 
04-10 02:55:24.945: W/System.err(8509):  at android_maps_conflict_avoidance.com.google.googlenav.datarequest.DataRequestDispatcher$DispatcherServer.run(DataRequestDispatcher.java:1702) 
04-10 02:55:24.945: W/System.err(8509):  at java.lang.Thread.run(Thread.java:856) 

回答

0

你使用的是默认的API密钥?

使用您的证书获取API密钥。

+0

我试图获得API密钥我证书。但是,不幸的是,我无法在这里获得API密钥。 https://developers.google.com/maps/documentation/android/v1/mapkey 有没有办法..?请让我知道.. – lavan 2013-04-11 06:23:12

+0

我最近发布了1.1版本的地图不工作,而1.0版本工作没有任何问题。 – lavan 2013-04-11 06:30:22

0

可选择:

 <uses-permission android:name="android.permission.INTERNET" /> 


     outside<application></application> 
  • 复制您释放键某处更改密钥库密码/这里的关键

  • 密码,并按照指示密钥别名更改
    Eclipse的首选项 - > Android的 - >生成 - >自定义密钥库设置 到步骤1中的文件路径。

完成!

+0

我希望所有的权限都必须在应用程序标签之外给出,否则不是有效的。我已经给它,但这不起作用。我认为问题在哪里。? – lavan 2013-04-11 06:44:35

0

lavan。需要许多权限和其他组件,我假设更改版本也会影响应用程序是否符合您在创建此权限所依赖的API项目时在Google上创建的列表。

例如....在.apk文件中生成的密钥不会改变,但是...如果您更改了软件包名称,则必须将其添加到Google的API项目中。我有三个包都使用相同的调试密钥签名并使用相同的API密钥。您可以将合格的软件包名称附加到SHA-1密钥的末尾,以使该软件包能够使用相同的API密钥。

这里是我的清单样子,少的细节我的应用程序....我使用的是MapFragment,而不是一个MapView ....

<?xml version="1.0" encoding="utf-8"?> 

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

    <permission android:name="your.package.name.permission.MAPS_RECEIVE" 
       android:protectionLevel="signature" /> 

    <uses-permission android:name="your.package.name.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" /> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 

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

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

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 
     <activity 
      android:name="your.package.name.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> 
     <meta-data android:name="com.google.android.maps.v2.API_KEY" 
        android:value="your API KEY" /> 
    </application> 

</manifest>