策略默认值和自定义策略
本文讨论了在封装的 ISV 应用程序中处理策略的方法。
-
更改非托管高级应用程序的策略默认值
MDX App SDK 包含以下策略文件,这些文件仅指定非托管高级应用程序的策略默认值。
- Android: Applications/Citrix/MDXToolkit/data/MDXSDK_Android/ default_sdk_policies.xml
- iOS: Applications/Citrix/MDXToolkit/data/MDXSDK/default_policies.xml
这些文件中的所有策略均已禁用。文件中未包含的任何策略都将针对非托管高级应用程序忽略。
可以按如下方式更改默认设置。
- 备份计划更改的任何默认策略文件,以备将来需要。
- 要更改 ISV 应用程序的策略默认值,请使用 MDX Toolkit 文档中指定的策略值,具体请参阅适用于 Android 应用程序的 MDX 策略和适用于 iOS 应用程序的 MDX 策略。
- 在构建高级应用程序时,将默认策略文件与应用程序资源一起包含。
创建自定义策略
-
MDX Toolkit 中的策略文件提供了策略的完整定义,包括在 Citrix Endpoint Management 控制台中显示的策略标签和帮助文本。封装应用程序时,这些策略会随生成的 .mdx 文件一起包含。可以将自定义策略添加到这些文件,这些文件位于 MDX Toolkit 安装文件夹中的 Applications/Citrix/MDXToolkit/data。
-
- 备份计划更改的任何策略文件,以备将来需要。
-
- 要将策略添加到策略 XML 文件,请使用“策略格式”中提供的格式。
-
- 封装应用程序时,通过在封装命令行中包含 -policyxml 选项来指定修改后的策略 XML 文件的位置:
-policyxml /Applications/Citrix/MDXToolkit/data/policy_metadata.xml有关使用命令行封装 ISV 应用程序的详细信息,请参阅使用命令行封装企业 iOS 应用程序和使用命令行封装 ISV Android 应用程序。
- 要在 Citrix Endpoint Management™ 控制台中验证策略名称、描述和值,请将应用程序上载到 Endpoint Management。
添加策略的准则
- 仅更改以粗体显示的项目。
- PolicyName 元素的值是从应用程序调用的名称。
- PolicyCategory 元素的值是策略将在 Citrix Endpoint Management 控制台中列出的类别名称。要查找类别名称,请参阅 MDX 策略文件 <Category> 部分中的 CategoryId 值。
- PolicyDefault 元素的值是策略的默认设置。
- <Title res_id=”POLICY_ID”> 中的 POLICY_ID 是用于策略的唯一 ID。该 ID 必须以字母开头,不能包含空格,并且只能包含字母、数字或下划线字符。
- Title 元素的值是显示在 Citrix Endpoint Management 控制台中的策略标签。
- <Description res_id=”POLICY_DESC_ID”> 中的 POLICY_DESC_ID 是策略描述的唯一 ID。该 ID 必须以字母开头,不能包含空格,并且只能包含字母、数字或下划线字符。
- Description 元素的值是显示在 Citrix Endpoint Management 控制台中的策略描述。
字符串
<Policy>
<PolicyName>PolicyName</PolicyName>
<PolicyType>string</PolicyType>
<PolicyCategory>Category_ID</PolicyCategory>
<PolicyDefault>Value</PolicyDefault>
<PolicyStrings>
<Title res_id="POLICY_ID”>Sample String Policy</Title>
<Description res_id="POLICY_DESC_ID">
Please enter the policy value.
</Description>
</PolicyStrings>
</Policy>
<!--NeedCopy-->
布尔值
<Policy>
<PolicyName>PolicyName</PolicyName>
<PolicyType>string</PolicyType>
<PolicyCategory>Category_ID</PolicyCategory>
<PolicyDefault>false</PolicyDefault>
<PolicyStrings>
<Title res_id="POLICY_ID”>Sample Boolean Policy</Title>
<BooleanTrueLabel res_id="POLICY_ON">On</BooleanTrueLabel>
<BooleanFalseLabel res_id="POLICY_OFF">Off</BooleanFalseLabel>
<Description res_id="POLICY_DESC_ID">
If On, the app does something.
If Off, the app does something else.
Default value is Off.
</Description>
</PolicyStrings>
</Policy>
<!--NeedCopy-->
枚举
<Policy>
<PolicyName>PolicyName</PolicyName>
<PolicyType>enum</PolicyType>
<PolicyEnumValues>
<PolicyEnumValue>
<PolicyEnumValueId>Value1</PolicyEnumValueId>
<PolicyEnumValueString res_id="ID_1">Yes</PolicyEnumValueString>
</PolicyEnumValue>
<PolicyEnumValue>
<PolicyEnumValueId>Value2</PolicyEnumValueId>
<PolicyEnumValueString res_id="ID_2">No</PolicyEnumValueString>
</PolicyEnumValue>
<PolicyEnumValue>
<PolicyEnumValueId>Value3</PolicyEnumValueId>
<PolicyEnumValueString res_id="ID_3">Maybe</PolicyEnumValueString>
</PolicyEnumValue>
</PolicyEnumValues>
<PolicyCategory>Category_ID</PolicyCategory>
<PolicyDefault>Value1</PolicyDefault>
<PolicyStrings>
<Title res_id="POLICY_ID”>Sample Enum Policy</Title>
<Description res_id="POLICY_DESC_ID">
Sample policy description.
Default value is Yes.
</Description>
</PolicyStrings>
</Policy>
<!--NeedCopy-->
策略默认值和自定义策略
已复制!
失败!