Activity 在展示 Admob 奖励视频广告后重新启动

Activity restarts after showing Admob Rewarded Video ad

如果用户 Rewarded,我想在 onRewardedVideoAdClosed() 中更新我的 Activity UI,但无法更新我的 activity 的任何视图,因为 activity 正在破坏当奖励视频广告打开时,

如果我做错了什么,那又怎样?谁能告诉我?因为我也遇到了同样的问题 SampleCode

终于,我解决了这个问题, 刚刚在我的 activity android:configChanges="orientation|screenSize"

中添加了这个 属性

现在我的activity看起来像

<activity
            android:name=".MainActivity"
            android:configChanges="orientation|screenSize"
            android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
</activity>

不错sample is here

如果您使用的是 Unity,这也适用!

您需要编辑可在以下位置找到的 AndroidManifest.xml 模板:

OSX: ~/Applications/Unity/PlaybackEngines/AndroidPlayer/Apk/AndroidManifest.xml
Windows: installation\Editor\Data\PlaybackEngines\androidplayer

*在此 Unity Question

中查看更多详细信息

这是我的 AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest
    xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.unity3d.player"
    xmlns:tools="http://schemas.android.com/tools"
    android:installLocation="preferExternal"
    android:versionCode="1"
    android:versionName="1.0">
    <supports-screens
        android:smallScreens="true"
        android:normalScreens="true"
        android:largeScreens="true"
        android:xlargeScreens="true"
        android:anyDensity="true"/>

    <application
        android:theme="@style/UnityThemeSelector"
        android:icon="@drawable/app_icon"
        android:label="@string/app_name">
        <activity android:name="com.unity3d.player.UnityPlayerActivity"
                  android:label="@string/app_name"
                  android:configChanges="orientation|screenSize">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
            <meta-data android:name="unityplayer.UnityActivity" android:value="true" />
        </activity>
    </application>
</manifest>

如您所见,我将 android:configChanges="orientation|screenSize" 添加到 activity。

请注意,您可以将 AndroidManifest.xml 文件作为每个项目的解决方案复制到您的 Assets/Plugins/Android 文件夹中,否则这将影响您所有的 Unity 项目(如果我理解正确的话)。