关于GoogleMaps Api Key和发布模式的另一个问题。
我有我的API密钥,在允许的Android应用程序中正确添加了SHA-1,在清单中复制了密钥,并在Android Studio中的google_maps_api.xml(调试,发布)中复制了密钥。 在调试中一切正常,但当我通过签名Apk安装应用程序时,它显示灰色屏幕和谷歌徽标。 谁知道我能做些什么呢? 任何帮助将非常感激。 这是我的AndroidManifest:
<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-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<permission
android:name="com.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="com.permission.C2D_MESSAGE" />
<application
android:name=".app.AppController"
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".Welcome"
android:configChanges="orientation|keyboardHidden|screenSize"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:theme="@style/FullscreenTheme" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".MainActivity"
android:label="@string/title_activity_main"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".MenuActivity"
android:label="@string/title_activity_menu"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".GalleryActivity"
android:label="@string/title_activity_gallery"
android:screenOrientation="portrait" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.MainActivity" />
</activity>
<activity
android:name=".TripActivity"
android:label="@string/title_activity_trip"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".PromoActivity"
android:label="@string/title_activity_promo"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".ContactActivity"
android:label="@string/title_activity_contact"
android:screenOrientation="portrait" >
</activity>
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="@string/google_maps_key" />
答案 0 :(得分:0)
您是否在xml代码中实现了这样的地图:
<fragment
android:id="@+id/map"
android:name="com.google.android.gms.maps.MapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
还在java中实现map?
GoogleMap googleMap = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();
googleMap.setMapType(GoogleMap.MAP_TYPE_NORMAL);
googleMap.getUiSettings();
googleMap.getUiSettings().setZoomControlsEnabled(true);
有关Google地图here
的更多信息如果您有任何疑问,请询问
<强>更新强>
这部分代码:
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="@string/google_maps_key" />
需要在地图所在的类的活动之后立即执行/
例如,如果地图位于Welcome类中,则清单应如下所示:
<permission
android:name="com.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="com.permission.C2D_MESSAGE" />
<application
android:name=".app.AppController"
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".Welcome"
android:configChanges="orientation|keyboardHidden|screenSize"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:theme="@style/FullscreenTheme" >
<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.gms.version"
android:value="@integer/google_play_services_version" />
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="@string/google_maps_key" />
<activity
android:name=".MainActivity"
android:label="@string/title_activity_main"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".MenuActivity"
android:label="@string/title_activity_menu"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".GalleryActivity"
android:label="@string/title_activity_gallery"
android:screenOrientation="portrait" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.MainActivity" />
</activity>
<activity
android:name=".TripActivity"
android:label="@string/title_activity_trip"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".PromoActivity"
android:label="@string/title_activity_promo"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".ContactActivity"
android:label="@string/title_activity_contact"
android:screenOrientation="portrait" >
</activity>
<强>更新强>
检查您是否在Android sdk中更新了Google Play服务,如果您在dependencies
添加了此行,请检查gradle:
compile 'com.google.android.gms:play-services:7.0.0'
答案 1 :(得分:0)
我认为你从机器A生成了SHA指纹密钥并在机器B中编译了你的android项目。这是你可能得到空白屏幕的原因之一。请在机器A中构建你的android项目。
答案 2 :(得分:0)
答案 3 :(得分:0)
我有同样的问题,我知道原因。
如果找到,请检查logcat:
protected function _initBootstrap(){
$this->bootstrap('layout');
$layout = $this->getResource('layout');
$view = $layout->getView();
$view->addHelperPath('ZendX/JQuery/View/Helper/', 'ZendX_JQuery_View_Helper');
}
检查文件夹
中的文件.fill-height-or-more {
min-height: 100%;
display: flex;
}
.fill-height-or-more > div {
-webkit-box-flex: 1;
-webkit-flex: 1;
-moz-box-flex: 1;
-ms-flex: 1;
flex: 1;
display: flex;
justify-content: center;
flex-direction: column;
align-items : center;
}
.some-area > div {
padding: 1rem;
}
.some-area > div:nth-child(1) {
background: #88cc66;
}
.some-area > div:nth-child(2) {
background: #79b5d2;
}
.some-area > div:nth-child(3) {
background: #8cbfd9;
}
.some-area > div h1, .some-area > div h2 {
margin: 0 0 0.2rem 0;
}
.some-area > div p {
margin: 0;
}
html, body {
height: 100%;
}
应用\ SRC \的调试强> \ RES \ valuess 和 应用\ SRC \的释放强> \ RES \值
对于debug来说,是另一个带有API的文件。