当开发者想要在自己的应用程序中展示广告的时候,请考虑使用广告平台开放的API(应用程序编程接口),这个API会让你能够嵌入商业化广告。在这篇文章中,我将提供一个简单的介绍和该过程的完整的详细介绍。
为什么对接广告?
很多应用程序是可以为开发者带来收益,通过在移动应用程序中展示广告来实现这一目标。大多数应用程序开发者会与广告平台合作,平台会根据特定的策略来集成广告。
但是,开发者可以直接开发应用程序内部的广告功能,从而在不依赖第三方平台的情况下获取更高收益。这样做的好处是可以完全控制广告展示时间,和分享收入的发放方式等等。
如何对接广告?
对接广告程序需要的基本知识是了解API(应用程序编程接口)。广告供应商会提供一个API投放接口,接口包含有向应用程序传输广告信息的静态和动态数据项,参数以及方法。这个API貌似很神秘,实际上就是一组代码,提供一些公共方法来访问广告集成工具如横幅广告、插屏广告、原生广告等等。
API是供应商和应用程序之间的桥梁,开发人员以API为基础设计和开发需要应用于应用程序的广告嵌入和集成。
对于Android开发人员而言,Google AdMob或者是Facebook Audience Network(FAN)是非常好的广告选项。两者提供的SDK(软件开发工具包)包含API和供开发人员使用的代码库,用于构建应用程序内的广告集成。
Google AdMob
对于AdMob,首先注册一个AdMob帐户。在创建一个新的应用程序时,这个帐号会创建一个‘Ad Unit ID’用来向AdMob提供每个广告单元的唯一标识符。应该记下这个‘Ad Unit ID’,以后可以在代码中使用它。
接着,使用Android Studio创建一个新项目,在gradle.build文件中添加以下依赖项:
dependencies {
implementation 'com.google.android.gms:play-services-ads:19.4.0'
}
在application Manifest文件中添加以下代码:
package="com.appdevelpment.admobdemo"> < application ... android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="@string/admob_app_id"/> application > manifest > 创建一个新的Activity并向该Activity添加广告展示,可以添加以下代码(可以添加Banner广告在Activity版块上): xmlns:ads="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> android:id="@+id/adView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" ads:adSize="BANNER" ads:adUnitId="@string/banner_ad_unit_id" /> 此代码创建了一个大小为BANNER、应用程序提供的Ad Unit ID的底部横幅广告,可以把这些代码放入Activity类中,使用 findViewById()方法来检索AdView对象并在代码中加载广告: AdView adView = findViewById(R.id.adView); AdRequest adRequest = new AdRequest.Builder().build(); adView.loadAd(adRequest); Facebook Audience Network Facebook开发小组也提供了一个类似的API类库——Facebook Audience Network(FAN)。代码实现类似,还是先注册一个FAN帐号。 在帐户设置后,选择一个代码代码库,在这里可以选择Android或iOS开发的代码。安装该代码库分为三步: - 将Facebook SDK添加到项目中; - 将Facebook Audience Network库添加到项目中; - 使用Facebook Audience Network API配置广告单元。 在gradle.build文件中添加以下依赖项: dependencies { compile 'com.facebook.android:audience-network-sdk:5.2.0' } 在XML中使用ad_placement而不是ad_unit_id,例如: android:id="@+id/adView" android:layout_width="wrap_content" android:layout_height="wrap_content" ads:placementId="@string/audience_network_placement_id" ads:adSize="BANNER_HEIGHT_50"/> 在应用程序代码中,可以使用以下代码来请求和加载广告: // Instantiate an AdView view AdView adView = new AdView(this, "YOUR_PLACEMENT_ID", AdSize.BANNER_HEIGHT_50); // Find the Ad Container LinearLayout adContainer = findViewById(R.id.banner_container); // Add the ad view to your activity layout adContainer.addView(adView); // Request an ad adView.loadAd(); 总结 虽然上面给出的示例非常简单,但是通过了解API及其工作原理可以方便开发者更加深入地理解广告集成。此外,建议在开发应用程序时,考虑将广告嵌入应用程序中,以增加应用程序的付费模式和收益来源。