Android如何处理未知的XML标记?

Android如何处理未知的XML标记?,android,xml,android-version,Android,Xml,Android Version,根据Android Lint,一些XML属性会导致旧设备崩溃。例如,此处引用的属性“paddingStart”可能会导致某些比API 17旧的特定设备崩溃 这是否意味着我需要单独的XML文件来支持未知标记(例如,在layout-v17资源目录中添加了paddingStart属性的相同布局) 我不喜欢有一个额外的、几乎相同的文件,因为当我更新代码时,这很容易出错。一些设备真的会崩溃吗?我原以为未知标记会被忽略。据我所知,您应该能够使用paddingLeft和“paddingStart”而不会导致任

根据Android Lint,一些XML属性会导致旧设备崩溃。例如,此处引用的属性“paddingStart”可能会导致某些比API 17旧的特定设备崩溃

这是否意味着我需要单独的XML文件来支持未知标记(例如,在
layout-v17
资源目录中添加了
paddingStart
属性的相同布局)


我不喜欢有一个额外的、几乎相同的文件,因为当我更新代码时,这很容易出错。一些设备真的会崩溃吗?我原以为未知标记会被忽略。

据我所知,您应该能够使用
paddingLeft
和“paddingStart”而不会导致任何错误。
paddingStart
等属性用于设置从左到右的布局,或者在某些国家/地区设置从右到左的布局,如果在这种情况下,“开始”将位于屏幕的右侧


因此,概括地说,使用
paddingLeft
paddingRight
paddingTop
paddingBottom
据我所知,您应该能够使用
paddingLeft
和“paddingStart”而不会产生任何错误。
paddingStart
等属性用于设置从左到右的布局,或者在某些国家/地区设置从右到左的布局,如果在这种情况下,“开始”将位于屏幕的右侧


总之,使用
paddingLeft
paddingRight
paddingTop
paddingBottom
,您可以使用诸如marginLeft之类的旧标记。通常,如果您支持旧设备,使用旧的向后兼容标记/属性会更容易,因为向后兼容性不应破坏较新设备上的功能。如果向后兼容性不令人满意,并且您仍然需要支持较旧的设备,那么您需要有单独的文件或逻辑来解释这些api差异。您可以将应用程序限制为清单中较高的api,或者不使用这些属性,这是我的建议。您可以使用旧的标记,例如marginLeft。如果您支持旧设备,通常更容易使用旧的向后兼容标记/属性,因为向后兼容不应破坏新设备上的功能。如果向后兼容性不令人满意,并且您仍然需要支持较旧的设备,那么您需要有单独的文件或逻辑来解释这些api差异。我的建议是,您可以将应用程序限制为清单中更高的api,或者不使用这些属性。