亚马逊广告xml布局



我正试图通过将广告作为xml布局的一部分来包含这些广告,我在这个快速入门指南中注意到:https://developer.amazon.com/sdk/mobileads/quick-start.html它说您应该将名称空间设置为"xmlns:Aamazon="http://schemas.android.com/apk/res/"。然而,当我尝试这个intelij说,名称空间从未使用过,广告也从未出现在布局中。我查看了sdk中提供的示例,对于它们的命名空间,它们没有使用包名,而是:"xmlns:Aamazon="http://schemas.android.com/apk/lib/com.amazon.device.ads"。所以我想知道我应该使用的正确名称空间是什么

我注意到在这个快速启动指南上,它说你应该将名称空间设置为";xmlns:Aamazon=";http://schemas.android.com/apk/res/"quot;

我查看了sdk中提供的示例,对于它们的命名空间,它们没有使用包名,而是:";xmlns:Aamazon=";http://schemas.android.com/apk/lib/com.amazon.device.ads"quot;

第一句话不正确。在快速启动指南中,它实际上说名称空间应该是:

xmlns:Amazon="http://schemas.android.com/apk/res/<type your package name>"

注意最后一部分。这很重要,因为这正是你提出这个问题的依据

与Android上的任何自定义视图一样,如果你想使用一个或多个不在Android命名空间中的属性,你必须首先声明它们的位置。通常,这意味着您复制上面的行并附加项目的包名称。Amazon前缀可以是任何您喜欢的前缀,但为名称空间指定一个与其定义相关的名称是有意义的。

在这种情况下,通过声明Amazon命名空间,可以在布局文件中使用Amazon:adSize属性。如果没有该声明,您的IDE将不知道在哪里查找adSize属性。

也就是说,如果你不使用任何自定义属性,那么就没有必要声明命名空间,因为你不会使用它。这基本上就是IntelliJ告诉你的。换句话说:如果您的布局中没有使用Amazon:adSize,您可以安全地删除Amazon命名空间声明。

最新更新