Android App Map Fragment在发行版本中未显示

时间:2019-02-01 22:10:16

标签: android

我已经使用Map Fragment创建了一个小型android应用,并正在使用jetbrains-studio对其进行测试。我已经获得了API密钥,无论手机是通过USB电缆插入笔记本电脑还是随身携带(无论是否包含跟踪元素,我都需要这样做),它都能正常工作。

我已通过API和服务信息中心启用了“ Android版Maps SDK” API。

当我上传应用程序时,我去了“应用程序签名”并下载了名为“ deployment_cert.der”的Google证书。什么时候到 编译我的应用程序

keytool -importcert-文件deployment_cert.der -keystore keystore.jks

(密钥库是我去将应用程序的发行版编译为签名的apk时创建的文件;当我上传应用程序时,Google并未抱怨并接受它)

我让我的妻子通过在手机和平​​板电脑上从Playstore下载来测试该应用程序,但是我得到了一个灰色框,上面有Google徽标,位于角落,+ /-缩放按钮和“居家中心”位于右上角的圆圈。该应用程序上的所有其他功能都可以正常工作。

我不知道有什么问题吗?有人可以提供一些提示吗?我对寻找的东西感到困惑。

我已经检查了设备的兼容性,并且我使用过的所有设备都在设备目录中列为正常。

我的清单文件如下:

input

我的build.gradle文件是:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mydomain.ge">

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

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


<application
    android:allowBackup="true"
    android:icon="@drawable/gmarkerblank"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">

    <meta-data
        android:name="com.google.android.geo.API_KEY"
        android:value="@string/google_maps_key" />

    <activity
        android:name=".GE"
        android:label="@string/title_activity_ge">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>


</application>

我的活动文件如下:

apply plugin: 'com.android.application'

android {
compileSdkVersion 27
defaultConfig {
    applicationId "com.mydomain.ge"
    minSdkVersion 15
    targetSdkVersion 27
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    multiDexEnabled true
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}

dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.google.android.gms:play-services-maps:15.0.1'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
//implementation 'com.google.android.gms:play-services:12.0.1'
implementation 'com.android.support:multidex:1.0.3'
implementation 'com.android.support:design:27.1.1'
implementation 'com.github.pengrad:mapscaleview:1.4.1'

}

基本上,它产生的是,第一行包含一个图像按钮,然后在其旁边填充该行的其余部分是应用程序的标题 接下来是地图,占据了大部分空间 最底部是一行,其中包含一个文本编辑框和一个右侧的按钮。 我在源代码中看不到任何明显的问题

1 个答案:

答案 0 :(得分:0)

您的应用会根据您的构建变体生成不同的SHA-1指纹。

另外,当您使用Google的应用签名时,当您上传apk时,Google会为您生成SHA-1指纹,因此您需要像使用调试指纹一样在Google Cloud Platform Console中添加该指纹。

您可以通过将谷歌游戏控制台查看生成的指纹 - >发布管理 - >应用签署