时间:2021-07-15 | 标签: | 作者:Q8 | 来源:华为开发者联盟官网网络
小提示:您能找到这篇{HUAWEI Ads开屏广告}绝对不是偶然,我们能帮您找到潜在客户,解决您的困扰。如果您对本页介绍的HUAWEI Ads开屏广告内容感兴趣,有相关需求意向欢迎拨打我们的服务热线,或留言咨询,我们将第一时间联系您! |
< ">开屏广告 < ">开屏广告是一种在应用启动时且在应用主界面显示之前需要被展示的广告。 < ">< font-size: 18px;">添加开屏广告 < ">1.添加SplashView。 < ">在XML布局文件中添加SplashView。 < ">以下示例代码中展示了如何在XML布局文件中添加SplashView。 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".SplashActivity">
<!-- 开屏广告Logo区域 --> <RelativeLayout android:id="@+id/logo_area" android:layout_width="match_parent" android:layout_height="100dp" android:layout_alignParentBottom="true" android:background="@android:color/white" android:visibility="visible"> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" android:layout_marginBottom="40dp" android:orientation="vertical"> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:layout_marginBottom="6dp" android:gravity="center" android:orientation="horizontal"> <ImageView android:layout_width="28dp" android:layout_height="28dp" android:background="@mipmap/ic_launcher" /> <View android:layout_width="0.5dp" android:layout_height="18dp" android:layout_marginLeft="12dp" android:layout_marginRight="12dp" android:alpha="0.1" android:background="@android:color/black" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:alpha="1" android:text="@string/owner" android:textColor="@android:color/black" android:textSize="16sp" /> </LinearLayout> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:alpha="0.5" android:text="@string/copyright_info" android:textColor="@android:color/black" android:textSize="8sp" /> </LinearLayout> </RelativeLayout>
<!-- 开屏广告视图 --> <com.huawei.hms.ads.splash.SplashView android:id="@+id/splash_ad_view" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_above="@id/logo" /> </RelativeLayout> < ">< background-color: rgb(255, 255, 255);">说明 您需要配置在Logo区域中配置对应的应用图标、应用名称和版权信息。 以下示例代码展示了如何获取SplashView。 SplashView splashView=findViewById(R.id.splash_ad_view); < ">2.修改应用默认启动页面。 < ">开屏广告是在应用主界面显示之前被展示,所以需修改应用默认启动页面。 < ">修改AndroidManifest.xml,将默认启动的activity修改为SplashActivity,这样即可在应用主界面加载前展示开屏广告。 < ">修改后的内容示例如下: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.huawei.hms.ads.sdk"> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity" android:exported="false" &nbs网络营销有哪些方法p; android:screenOrientation="portrait"> </activity> <activity android:name=".SplashActivity" android:exported="false" android:screenOrientation="portrait"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> ... </application> </manifest> 创建SplashActivity.java类,用于实现开屏广告获取和展示。 ... import android.os.Build; import androidx.appcompat.app.AppCompatActivity;
public class SplashActivity extends AppCompatActivity { // "testq6zq98hecj"为专用的测试广告位ID, App正式发布时需要改为正式的广告位ID private static final String AD_ID = "testq6zq98hecj"; private static final int AD_TIMEOUT = 5000; private static final int MSG_AD_TIMEOUT = 1001;
/** * 暂停标志位。 * 在开屏广告页面展示时: * 按返回键退出应用时需设置为true,以确保应用主界面不被拉起; * 切换至其他界面时需设置为false,以确保从其他页面回到开屏广告页面时仍然可以正常跳转至应用主界面; */ private boolean hasPaused = false;
// 收到广告展示超时消息时的回调处理 private Handler timeoutHandler = new Handler(new Handler.Callback() { @Override public boolean handleMessage(@NonNull Message msg) { if (SplashActivity.this.hasWindowFocus()) { jump(); } return false; } });
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_splash); // 获取并展示开屏广告 loadAd(); } /** * 广告展示完毕时,从广告界面跳转至App主界面 */ private void jump() { if (!hasPaused) { hasPaused = true; startActivity(new Intent(SplashActivity.this, MainActivity.class)); finish(); } } /** * 按返回键退出应用时需设置为true,以确保应用主界面不被拉起 */ @Override protected void onStop() { // 移除消息队列中等待的超时消息 timeoutHandler.removeMessages(MSG_AD_TIMEOUT); hasPaused = true; super.onStop(); } /** * 从其他页面回到开屏页面时调用,进入应用主界面 */ @Override protected void onRestart() { super.onRestart(); hasPaused = false; jump(); } @Override protected void onDestroy() { super.onDestroy(); } } < ">3.获取广告。 < ">SplashView创建好之后,通过SplashView类的load()方法来获取广告。 < ">示例代码如下: private void loadAd() { int orientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT; AdParam adParam = new AdParam.Builder().build(); SplashView.SplashAdLoadListener splashAdLoadListener = new SplashView.SplashAdLoadListener() { @Override public void onAdLoaded() { // 广告获取成功时调用 ... } @Override public void onAdFailedToLoad(int errorCode) { // 广告获取失败时调用, 跳转至App主界面 jump(); } @Override public void onAdDismissed() { // 广告展示完毕时调用, 跳转至App主界面 jump(); } }; // 获取SplashView SplashView splashView = findViewById(R.id.splash_ad_view); // 设置默认Slogan splashView.setSloganResId(R.drawable.default_slogan); // 设置视频类开屏广告的音频焦点类型 splashView.setAudioFocusType(AudioFocusType.NOT_GAIN_AUDIO_FOCUS_WHEN_MUTE); // 获取广告,其中AD_ID为广告位ID splashView.load(AD_ID, orientation, adParam, splashAdLoadListener); // 发送延时消息,保证广告显示超时后,APP首页可以正常显示 timeoutHandler.removeMessages(MSG_AD_TIMEOUT); timeoutHandler.sendEmptyMessageDelayed(MSG_AD_TIMEOUT, AD_TIMEOUT); } < ">说明 < ">您需要为App设计一张开屏默认Slogan图片,确保在未获得到开屏广告之前展示默认Slogan,提供良好的用户体验。 < ">4.(可选电商运营岗位的要求)监听广告事件。 < ">通过实现SplashAdDisplayListener类中的方法来监听广告展示类事件。了解详细方法,请参见API文档中的SplashAdDisplayListener类。 SplashAdDisplayListener adDisplayListener = new SplashAdDisplayListener() { @Override public void onAdShowed() { // 广告显示时调用 ... } @Override public void onAdClick() { // 广告被点击时调用 ... } }; splashView.setAdDisplayListener(adDisplayListener); < ">< font-size: 18px;">测试开屏广告 < ">测试开屏广告时,需要使用专门的测试广告位ID来获取测试广告,以避免在测试过程中产生无效的广告点击量。测试广告位ID仅作为功能调试使用,不可用于广告变现。您需要在应用发布前申请正式的广告位ID,并替换测试广告位ID。 < ">以下表格中提供了开屏广告的专用测试广告位ID: < ">下载开屏广告的示例代码并运行,可以看到如下效果图: < ">另外您也可以通过学习Codelab中的教程来集成开屏广告。 |
上一篇:Akamai:游戏出海,安全和体验先行
下一篇:HUAWEI Ads贴片广告
基于对传统行业渠道的理解,对互联网行业的渠道我们可以下这样一个定义:一切...
小米应用商店的后台操作和苹果是比较相似的,因为都能填写100字符关键词,允许...
小米的规则目前是在变更中的,但是根据经验小米的搜索排名评分的高低是个很重...
为了恰饭,有时候是要接入一些广告的,所以FB也专门有一个广告的SDK,这就是A...
在 2018 年于旧金山举行的游戏开发者大会上,Amazon Web Services (AWS) 曾宣布,目前世...
关于Facebook Audience Network如何收款的问题,其实官方已经给了详细的步骤。本文主要...
本文介绍了Audience Network对广告载体的质量检查,以及它重点广告形式需要注意的问...
随着iOS开发,作为开发者或公司需要针对iOS App开发涉及的方方面面作出对应的信息...
Facebook和谷歌对出海企业广告渠道都很熟悉,但事实上,在国外还有一些渠道也很...
卖家从做号的第1分钟开始,就一定要想好变现路径是什么?一定要以变现为目的去...
小提示:您应该对本页介绍的“HUAWEI Ads开屏广告”相关内容感兴趣,若您有相关需求欢迎拨打我们的服务热线或留言咨询,我们尽快与您联系沟通HUAWEI Ads开屏广告的相关事宜。
关键词:HUAWEI Ads开屏广告,HUAWEI A