如果更改包 ID 但旧包 ID 工作,Google Maps Api 无法识别/工作 -Android 工作室

Posted

技术标签:

【中文标题】如果更改包 ID 但旧包 ID 工作,Google Maps Api 无法识别/工作 -Android 工作室【英文标题】:Google Maps Api is not recognizing/working if change package ID but old package ID work -Android studio 【发布时间】:2020-03-13 19:15:25 【问题描述】:

当我更改项目包 ID 时,Google 地图 API 无法正常工作。它不加载地图,但旧包 ID 工作并加载地图。 我也尝试了这些解决方案,但仍然无法正常工作: 1-在您的 logcat 中使用“Google 地图”进行过滤。 2-您将看到一条错误消息,其中包含正确的包名称和 SHA 密钥,应该是 在 API 密钥中原样显示 3-转到 Google Cloud Console -> API -> Credentials,并交叉验证以上两者,如果 必要的。 等待 10-15 分钟以反映 API 密钥更改

这是布局:

<fragment
                android:id="@+id/map_view"
                android:name="com.google.android.gms.maps.SupportMapFragment"
                android:layout_
                android:layout_ />

这是清单:

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

<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.CAMERA" />


<application
    android:name="android.support.multidex.MultiDexApplication"
    android:allowBackup="true"
    android:hardwareAccelerated="false"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:largeHeap="true"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity
        android:name=".MainNagActivity"
        android:label="@string/app_name"
        android:screenOrientation="portrait"
        android:theme="@style/AppTheme.NoActionBar">
        <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.geo.API_KEY"
        android:value="@string/google_maps_key" />
 <activity
        android:name=".activities.MapViewActivity"
        android:screenOrientation="portrait" />
 </application>

【问题讨论】:

【参考方案1】:

终于,我成功了。 修复步骤是: 1)我已经从我的设备上卸载了该应用程序 2)从android/app/build/outputs/apk中删除app-debug.apk、app-debug-unaligned.apk 3) 从 Google 开发者控制台中删除 API 密钥 4) 生成新的 API 密钥 5) 在 AndroidManifest.xml 中添加了新的 Key 6)在设备上构建我的应用程序

【讨论】:

以上是关于如果更改包 ID 但旧包 ID 工作,Google Maps Api 无法识别/工作 -Android 工作室的主要内容,如果未能解决你的问题,请参考以下文章

Google Maps API 密钥可能对您的捆绑包 ID 无效

更改 Google 表格布局的公式:转置和拆分

复制后如何更改 Google 表单 ID?

获取包 com.google.android.gms.ads.identifier 不存在,同时尝试获取 google 广告 id

如何在 HTML 和 JS 文件中更改 Google Maps Javascript API 的地图 ID?

唯一联系人 ID