Не удается импортировать com.google.android.gms: play-services-ads: 17.1.1 - PullRequest
0 голосов
/ 14 ноября 2018
apply plugin: 'com.android.application'
   android {
   compileSdkVersion 28

   defaultConfig {
      applicationId "com.kaiboon0216gmail.homeownerstarterkit"
      minSdkVersion 21
      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(dir: 'libs', include: ['*.jar'])
   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:cardview-v7:28.0.0'
   implementation 'com.google.android.gms:play-services-ads:17.1.1'
}

Это мои коды. Я использую Admob для показа объявлений в своем приложении. Когда я добавляю этот код: " 'com.google.android.gms: play-services-ads: 17.1.1 '" и синхронизация, мои приложения аварийно завершают работу.

После этого я захожу на официальный сайт Admob и обнаружил, что эта версия предназначена для ' com.android.support: appcompat-v7: 26.1.0 ' версия.Но когда я изменяю compileSdkVersion на 26, мои приложения по-прежнему аварийно завершают работу.

Я тестирую код без этого кода: "" com.google.android.gms: play-services-ads: 17.1.1 '" и он может работать. Я уверен, что этот код является проблемой, но я не знаю, как его исправить.

Может кто-нибудь помочь решить моюпроблема?Спасибо.

Ответы [ 3 ]

0 голосов
/ 22 ноября 2018

Потому что с "com.google.android.gms: play-services-ads: 17.1.1" вам нужно что-то обновить.

Вам необходимо обновить AndroidManifest.xml

<manifest>
    <application>
        <meta-data
            android:name="com.google.android.gms.ads.AD_MANAGER_APP"
            android:value="true"/>
    </application>
</manifest>

И с этим:

<manifest>
    <application>
        <!-- Sample AdMob App ID: ca-app-pub-3940256099942544~3347511713 -->
        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="[ADMOB_APP_ID]"/>
    </application>
</manifest>

Вы можете проверить эти ссылки для получения более подробной информации.

https://developers.google.com/ad-manager/mobile-ads-sdk/android/quick-start#update_your_androidmanifestxml

https://developers.google.com/admob/android/quick-start#update_your_androidmanifestxml

В противном случае вы должны использовать "com.google.android.gms: play-services-ads: 16.0.0"

0 голосов
/ 23 ноября 2018

Перейти к Admob - Select App - App Setting - App ID скопировать значение из App ID

Теперь добавьте это (измените android:value="paste the App ID value you copy from your admob app")

<meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="ca-app-pub-111100000000~1111111"/>

meta-data в AndroidManifest.xml файл

Не нужно ничего добавлять в APPLICATION_ID из android:name="com.google.android.gms.ads.APPLICATION_ID"

Это будет работать!

См. Рисунок ниже для ясного понимания

enter image description here

0 голосов
/ 15 ноября 2018

Используйте «com.google.android.gms: play-services-ads: 16.0.0», новая версия 17.1.1 меняет реализацию кода, т. Е. Вам нужно сделать это тоже в исходном коде или вернуться к 16.0. 0 сейчас ...

исправит вашу ошибку, пока ...

...