android XML命名空间的故事是什么?

时间:2010-06-17 03:24:12

标签: xml android url namespaces

当您第一次使用android XML命名空间中的名称时,您必须说明在哪里找到它,并使用XML中的属性:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

但是,该网址是404 - 在那里找不到任何内容。

android:namespace实际上包含在本地安装的SDK下。

那么这里发生了什么?为什么我需要包含一个死URL?为什么构建系统不像所有其他库那样从SDK中选择它?

谢谢,只是在寻找关于此的背景故事。

彼得

1 个答案:

答案 0 :(得分:12)

这是XML中糟糕的设计决策之一,使用URI的原因是很容易保证它们是唯一的。这是设计缺陷,用户期望他们指向某处找到某些东西。在这种情况下他们不会。

它们可用于查找资源这一事实是偶然的。当您意识到它们只是唯一的字符串时,将定义文件包含在不同的SDK中变得非常自然。

相关问题