【发布时间】:2021-05-22 14:57:07
【问题描述】:
我对 Android / Kotlin 比较陌生。
我想知道像 AdMob 这样的 Android 库是如何在没有任何集成应用布局准备的情况下从库内部创建和显示视图(尤其是插页式广告)的。我认为这个视图是某种片段。
显示来自AdMob 的插页式广告的示例代码:
我认为这与在 show 方法中作为参数传递的 Activity 有关。
if (mInterstitialAd != null) {
mInterstitialAd?.show(this)
} else {
Log.d("TAG", "The interstitial ad wasn't ready yet.")
}
Guide 声明,要以编程方式添加片段,“布局应包含 FragmentContainerView”。此外,在同一指南的示例代码中,所述 FragmentContainerView 的 id 用于添加片段。这个 id 在库中是未知的。
class ExampleActivity : AppCompatActivity(R.layout.example_activity) {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
if (savedInstanceState == null) {
supportFragmentManager.commit {
setReorderingAllowed(true)
add<ExampleFragment>(R.id.fragment_container_view)
}
}
}
}
这样的库是如何做到这一点的?
【问题讨论】: