使用许可之间的差异

Difference between uses-permission

有区别吗:

<!--1.-->
<uses-permission android:name="android.permission.CAMERA"></uses-permission>
<!--2.-->
<uses-permission android:name="android.permission.CAMERA"/>

因为在 Android Studio 中使用不同的版本,所以 1. 选项的背景是黄色的。那么对代码有影响吗?

不,没有区别。

第二个标签称为自闭标​​签被XML解析器同等对待。当元素没有子元素时,它只是一个快捷方式。

它以黄色显示是因为自闭合标签更易于阅读,而且 Android Studio 希望您实施良好的编码实践 :P.

当您的标签需要添加子项时,您不能使用后者:

<intent-filter>
    <action android:name="android.intent.action.MAIN" /> <!--allowed here-->
    <category android:name="android.intent.category.LAUNCHER" />
</intent-filter> <!--can't do it here-->

阅读more and more

不,没有。虽然关闭 XML 标签是必要的,但可以通过两种方式完成:

Non-Empty Closed Element with

<uses-permission android:name="android.permission.CAMERA"></uses-permission>

Empty Closed Element

<uses-permission android:name="android.permission.CAMERA"/>

空闭元素的优点:

  • 可读性
  • 更小的文件大小

空封闭元素的缺点:

  • 添加的 child 标签将不可读

请注意,Android Studio 将其显示为黄色,因为它知道只要没有 children 元素就不需要添加 self-closing 元素。

但如果您有 children,则需要结束标记。