为 Unity+UWP 添加 broadFileSystemAccess 功能
Add broadFileSystemAccess capability to Unity+UWP
我正在尝试将名为 broadFileSystemAccess
的 capability 添加到使用 Unity[=21= 构建的 UWP 应用程序] 并且没有 XAML 标记。文档说要将以下内容添加到应用程序清单中,但 unity / visual studio 项目中不存在应用程序清单。是 MRP 上没有此功能,还是我们做错了什么?
这是应该添加到您的应用程序包清单中的内容,但就像我提到的那样,我们没有其中之一。
<?xml version="1.0" encoding="utf-8"?>
<Package
...
xmlns:uap4="http://schemas.microsoft.com/appx/manifest/uap/windows10/4">
...
<Capabilities>
<uap4:CustomCapability Name="CompanyName.customCapabilityName_PublisherID"/>
</Capabilities>
</Package>
您可以按如下方式添加能力:PlayerSettingsWSA Capabilities
如果功能不在列表中,您必须使用 IL2CPP 构建项目,以便输出名为 Package.appxmanifest
的应用程序包清单并自行修改 XML。
为了让事情变的神奇
您可以编写一个具有 PostProcessBuildAttribute
属性的方法,如下所示:Unity - Scripting API: PostProcessBuildAttribute 将验证并添加 XML 标记,如果Package.appxmanifest
.
中不存在
您也可以像这样创建自定义构建:Unity - Manual: Build Player Pipeline 并添加相同的逻辑来验证和添加功能(XML 标记)
伪代码:
using UnityEngine;
using UnityEditor;
using UnityEditor.Callbacks;
public class MyBuildPostprocessor {
[PostProcessBuildAttribute(1)]
public static void OnPostprocessBuild(BuildTarget target, string pathToBuiltProject) {
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load($"{pathToBuiltProject}/{PROJECT NAME HERE}/Package.appxmanifest");
// Find if the `broadFileSystemAccess` capability exists
// add `broadFileSystemAccess` capability
}
}
我正在尝试将名为 broadFileSystemAccess
的 capability 添加到使用 Unity[=21= 构建的 UWP 应用程序] 并且没有 XAML 标记。文档说要将以下内容添加到应用程序清单中,但 unity / visual studio 项目中不存在应用程序清单。是 MRP 上没有此功能,还是我们做错了什么?
这是应该添加到您的应用程序包清单中的内容,但就像我提到的那样,我们没有其中之一。
<?xml version="1.0" encoding="utf-8"?>
<Package
...
xmlns:uap4="http://schemas.microsoft.com/appx/manifest/uap/windows10/4">
...
<Capabilities>
<uap4:CustomCapability Name="CompanyName.customCapabilityName_PublisherID"/>
</Capabilities>
</Package>
您可以按如下方式添加能力:PlayerSettingsWSA Capabilities
如果功能不在列表中,您必须使用 IL2CPP 构建项目,以便输出名为 Package.appxmanifest
的应用程序包清单并自行修改 XML。
为了让事情变的神奇
您可以编写一个具有 PostProcessBuildAttribute
属性的方法,如下所示:Unity - Scripting API: PostProcessBuildAttribute 将验证并添加 XML 标记,如果Package.appxmanifest
.
您也可以像这样创建自定义构建:Unity - Manual: Build Player Pipeline 并添加相同的逻辑来验证和添加功能(XML 标记)
伪代码:
using UnityEngine;
using UnityEditor;
using UnityEditor.Callbacks;
public class MyBuildPostprocessor {
[PostProcessBuildAttribute(1)]
public static void OnPostprocessBuild(BuildTarget target, string pathToBuiltProject) {
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load($"{pathToBuiltProject}/{PROJECT NAME HERE}/Package.appxmanifest");
// Find if the `broadFileSystemAccess` capability exists
// add `broadFileSystemAccess` capability
}
}