Project不断粉碎并显示带有Google徽标的黑屏

时间:2018-12-22 13:26:05

标签: google-maps android-studio gradle manifest

我正在尝试将google地图添加到我的项目中,而我的项目不断崩溃并显示带有Google徽标的空白屏幕。 我不知道为什么它会粉碎,为什么它不显示地图。我曾尝试按照有人的建议重新生成API密钥,但这没有帮助。

清单代码:

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

<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"/>

<permission android:name="com.example.rotem.bepart_appproject.MAP_RECEIVE"
    android:protectionLevel="signature"/>
<uses-permission android:name="com.google.android.providers.gsf.permissions.READ_GSERVICES"/>

<!-- The following two permissions are not required to use
     Google Maps Android API v2, but are recommended. -->
<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"/>


<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="BePart"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity android:name=".OpeningPageActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".MainActivity" />
    <activity android:name=".SignUp" />
    <activity android:name=".SignIn" />
    <activity android:name=".UserProfile" />
    <activity android:name=".ReportTypesActivity" />

    <meta-data
        android:name="com.google.android.maps.v2.API_KEY"
        android:value="AIzaSyCWo7X7onXhiwJ-U3T4Pz7BMwFxmG_ddJM"/>
    <meta-data android:name="com.google.android.gms.versions"
        android:value="@integer/google_play_services_version"/>

</application>

我的项目gradle代码:

apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'

   android {
        compileSdkVersion 28
        defaultConfig {
            applicationId "com.example.rotem.bepart_appproject"
            minSdkVersion 23
            targetSdkVersion 28
            versionCode 1
            versionName "1.0"
            testInstrumentationRunner 
 "android.support.test.runner.AndroidJUnitRunner"
        }
        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:28.0.0'
         implementation 'com.android.support.constraint:constraint- 
layout:1.1.3'
         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.android.support:design:28.0.0'
    implementation 'com.google.firebase:firebase-storage:16.0.1'
    implementation 'com.google.firebase:firebase-core:16.0.1'
    implementation 'com.android.support:support-v4:28.0.0'

    implementation 'com.google.firebase:firebase-auth:15.0.0'
    implementation 'com.google.firebase:firebase-database:15.0.0'
    implementation 'com.google.android.gms:play-services-maps:15.0.0'
    implementation 'com.google.android.gms:play-services:12.0.0'

}

MainActivity:

public class MainActivity extends AppCompatActivity implements OnMapReadyCallback {

    private GoogleMap map;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        SupportMapFragment mapFragment=(SupportMapFragment)getSupportFragmentManager().findFragmentById(R.id.map);
        mapFragment.getMapAsync(this);
    }

    @Override
    public void onMapReady(GoogleMap googleMap) {
        map=googleMap;
    }
}

0 个答案:

没有答案