Ibm mobilefirst Worklight更改android清单中的权限

Ibm mobilefirst Worklight更改android清单中的权限,ibm-mobilefirst,Ibm Mobilefirst,我有一个为Android构建的混合worklight应用程序。我需要做推送通知,权限在清单文件中。默认情况下,它使用的权限包名称不正确,因此推送通知失败。我在worklight android环境中更改了清单文件,但如果我对应用程序进行了一些更改并需要重建android环境,则会将权限更改回不正确的值。它只对推送权限执行此操作,不会在任何其他位置更改它 程序包名为com.bcbst.mma,但每当它构建android应用程序时,都会将其更改为com.mma。在构建过程中,它会在何处将包名称更改为

我有一个为Android构建的混合worklight应用程序。我需要做推送通知,权限在清单文件中。默认情况下,它使用的权限包名称不正确,因此推送通知失败。我在worklight android环境中更改了清单文件,但如果我对应用程序进行了一些更改并需要重建android环境,则会将权限更改回不正确的值。它只对推送权限执行此操作,不会在任何其他位置更改它

程序包名为com.bcbst.mma,但每当它构建android应用程序时,都会将其更改为com.mma。在构建过程中,它会在何处将包名称更改为不正确的值?应用程序描述符文件包含正确的包名,因此我不知道从何处获取不正确的值

编辑: 这就是清单文件中的权限

<permission android:name="com.mma.permission.C2D_MESSAGE" android:protectionLevel="signature"/>  
<uses-permission android:name="com.mma.permission.C2D_MESSAGE"/>  

这就是我想要的:

<permission android:name="com.bcbst.mma.permission.C2D_MESSAGE" android:protectionLevel="signature"/>  
<uses-permission android:name="com.bcbst.mma.permission.C2D_MESSAGE"/>  


当我进行构建时,它会将其更改回第一个列表。我尝试了@DJones建议的方法,效果如我所愿,但如果这不再是推荐的方法,我如何防止这种情况再次发生?

在worklight 6.2中,android环境结构有一个“本机”和一个“本机资源”文件夹。

尝试在nativeResources文件夹中进行所有更改。将更改添加到nativeResources目录时,它会在生成过程中复制到本机目录。

您是在生成的Android项目中还是在app\Android\native文件夹中进行更改?你应该在后一种情况下做改变,而不是在前一种情况下。androidmanifest.xml文件被视为“用户文件”,在首次为您生成之后,Worklight builder不应对其进行更改。我还想了解更多有关失败的信息-为什么更改包名会导致失败?示例推送通知是否也会失败…?我在本机文件夹中更改了它,但在生成时,它会将其还原为错误的权限名称。示例应用确实可以工作,如果我在构建应用后更改清单文件,我们的应用也可以工作,但是如果我在尝试使用该应用之前没有修改清单文件,则在启动该应用时,它会说推送服务不可用,并且消息说它缺少权限。如果nativeResources文件夹帮助您,您可以继续使用它。该文件夹短期内不会移动到任何地方。我还创建了一个新的应用程序,并在同一权限行中更新了包名,在构建时它保持不变--没有恢复。我们不再推荐这种方法;此外,根据我的评论,没有理由将AndroidManifest.xml文件放在那里,因为它被视为用户文件,Worklight不应覆盖该文件。但是,如果它适合您,您应该使用它。此文件夹短期内将无法移动到任何地方。@IdanAdar如果从“nativeResources”文件夹中删除相同的文件,您关于更改“native”文件夹中的文件的建议可能会起作用。这样WL构建过程就不会有文件来替换现有的文件。如果不推荐使用“nativeResources”目录,可能值得一试。