在 Xamarin Android 中,AssemblyInfo.cs 与 AndroidManifest.xml 有何关系?

In Xamarin Android how is AssemblyInfo.cs related to AndroidManifest.xml?

我发现 Xamarin 文档示例 suggest 像那样向 AssemblyInfo.cs 添加权限 :

令人困惑
// Need to access the internet for GCM
[assembly: UsesPermission(Name = "android.permission.INTERNET")]

为什么?权限通常在 AndroidManifest.xml 中定义,甚至在 Xamarin Studio 中也有相应的 GUI。

似乎 AssemblyInfo.cs 包含有关标题和版本的信息:

[assembly: AssemblyTitle("MyApp")]
[assembly: AssemblyVersion("1.0.0")]

这是什么意思? AndroidManifest.xml 还包含标题和版本信息。

它们有什么关系?好像是基础知识,但是没有找到明确的解释。

Xamarin 刚刚添加了这种方式作为另一种添加权限的方式,但是在程序集级别,如果您不使用它没问题!,您可以像往常一样在 AndroidManifest.xml 中继续设置权限。在此参考link

AssemblyInfo.cs 生成插入到 AndroidManifes.xml.

中的元素

更多信息在 official documentation.