2015-07-26 3 views
0

Спокойной ночи!com.google.android.gms.ads.AdView в уровне API <21

Я пытаюсь добавить AdMob в мой проект, но он просто работает в API уровня 21 или 22, когда я изменяю предварительный просмотр API меньше, чем 21, у меня есть исключение Null Pointer Exception и если я пытаюсь скомпилировать и установить на устройство с Android 2 3 или Android 4 0, объявление не появляется и отлаживает, генерирует исключение Null Pointer Exception.

Я использую Android Studio 1 2 2 с обновлениями пакетов SDK.

пыльник ошибки:

The following classes could not be instantiated: 
-com.google.android.gms.ads.AdView 

и полное исключение

java.lang.NullPointerException 
    at android.os.Handler.<init>(Handler.java:157) 
    at com.google.android.gms.ads.internal.util.client.zza.<clinit>(Unknown Source) 
    at com.google.android.gms.ads.internal.client.zzk.<init>(Unknown Source) 
    at com.google.android.gms.ads.internal.client.zzk.<clinit>(Unknown Source) 
    at com.google.android.gms.ads.internal.client.zzy.<init>(Unknown Source) 
    at com.google.android.gms.ads.internal.client.zzy.<init>(Unknown Source) 
    at com.google.android.gms.ads.internal.client.zzy.<init>(Unknown Source) 
    at com.google.android.gms.ads.AdView.<init>(Unknown Source) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) 
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 
    at java.lang.reflect.Constructor.newInstance(Constructor.java:422) 
    at org.jetbrains.android.uipreview.ViewLoader.createNewInstance(ViewLoader.java:413) 
    at org.jetbrains.android.uipreview.ViewLoader.loadView(ViewLoader.java:105) 
    at com.android.tools.idea.rendering.LayoutlibCallback.loadView(LayoutlibCallback.java:177) 
    at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:206) 
    at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:131) 
    at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:739) 
    at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64) 
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:711) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:489) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:372) 
    at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:369) 
    at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:326) 
    at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:350) 
    at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:497) 
    at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:485) 
    at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:894) 
    at com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:485) 
    at com.android.tools.idea.rendering.RenderTask.render(RenderTask.java:590) 
    at com.intellij.android.designer.designSurface.AndroidDesignerEditorPanel$6.run(AndroidDesignerEditorPanel.java:480) 
    at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:320) 
    at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:310) 
    at com.intellij.util.ui.update.MergingUpdateQueue$2.run(MergingUpdateQueue.java:254) 
    at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:269) 
    at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:227) 
    at com.intellij.util.ui.update.MergingUpdateQueue.run(MergingUpdateQueue.java:217) 
    at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:238) 
    at com.intellij.util.Alarm$Request$1.run(Alarm.java:351) 
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
    at java.lang.Thread.run(Thread.java:745) 

и билд Gradle приложение File

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 22 
    buildToolsVersion "21.1.2" 

    defaultConfig { 
     applicationId "br.com.cinova.procuradominio" 
     minSdkVersion 10 
     targetSdkVersion 22 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile 'com.android.support:appcompat-v7:22.2.0' 
    compile 'com.google.android.gms:play-services:7.5.0' 
    compile 'com.android.support:support-v4:22.2.0' 
    } 

И манифеста Tag Application

<application 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:logo="@mipmap/ic_launcher" 
    android:theme="@style/AppTheme" > 

    <!-- This meta-data tag is required to use Google Play Services. --> 
    <meta-data 
     android:name="com.google.android.gms.version" 
     android:value="@integer/google_play_services_version" /> 

    <activity 
     android:name=".ActivityPrincipal" 
     android:configChanges="orientation" 
     android:icon="@drawable/icone" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait" > 
    </activity> 
    <activity 
     android:name=".SplashScreenActivity" 
     android:configChanges="orientation|keyboardHidden|screenSize" 
     android:logo="@mipmap/ic_launcher" 
     android:screenOrientation="portrait" 
     android:theme="@android:style/Theme.NoTitleBar.Fullscreen" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity 
     android:name=".ResultadoActivity" 
     android:configChanges="orientation" 
     android:icon="@drawable/icone" 
     android:label="@string/title_activity_resultado" 
     android:screenOrientation="portrait" > 
    </activity> 

    <!-- Include the AdActivity configChanges and theme. --> 
    <activity 
     android:name="com.google.android.gms.ads.AdActivity" 
     android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" 
     android:theme="@android:style/Theme.Translucent" /> 
    <activity 
     android:name=".ActivityConfiguracoes" 
     android:label="@string/title_activity_activity_configuracoes" > 
    </activity> 
</application> 

И активность AdView Тэг:

<com.google.android.gms.ads.AdView 
     android:id="@+id/adView" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerHorizontal="true" 
     android:layout_alignParentBottom="true" 
     ads:adSize="BANNER" 
     ads:adUnitId="@string/banner_ad_unit_id" 
     > 
    </com.google.android.gms.ads.AdView> 

Я стараюсь несколько вещей, но ничего не работа

Кто есть идея?

Благодаря

ответ

0

Исключение вы видите от вашего IntelliJ IDE (то есть Android-студия) в предварительном просмотре визуализации. Это вряд ли сможет отображать объявление.

Протестируйте его на реальном устройстве или на эмуляторе.

+0

Уильям, я тестировал в реальном устройстве и в эмуляторе, но не работал. Отладка имеет различие, в Android 5 экземпляр AdView был распознан с полным пакетом google, но в android <5 только как AdView и адрес памяти. –

+0

Задайте другой вопрос с новой ошибкой, которую вы получаете. – William

Смежные вопросы