我一直在尝试在我的应用中加入对Parse Push的支持,遵循GitHub上this wiki的说明。在为Android构建时,最后一个绊脚石是构建日志中的此错误消息:
属性"名称"绑定到命名空间" http://schemas.android.com/apk/res/android"已经为元素"应用"。
指定
原来,构建提示的组合
codename1.arg.android.multidex=true
和
codename1.arg.android.xapplication_attr=android\:name\="com.parse4cn1.nativeinterface.CN1AndroidApplication"
造成了这个问题。启用multidex后,应用程序名称将变为android.support.multidex.MultiDexApplication
我通过将multidex
设置为false
来解决这个问题,但如果我需要它true
怎么办?
答案 0 :(得分:1)
我认为这与多方法进程无关。 parse4cn1 wiki提到更改android.xapplication_attr
,我假设你添加了name属性。这是不正确的,因为它会将名称注入已经命名的活动。
答案 1 :(得分:1)
很高兴看到您找到了问题的解决方案。您提到您正在使用Parse.com进行推送通知。请注意,Parse.com是shutting down soon。目前,开源Parse Server仅支持Android和iOS(不是Windows Phone)的推送通知。此外,Parse Server引入了Parse.com中不存在的constraint,即:需要提供应用程序的主密钥才能从客户端触发推送通知。
按照设计,parse4cn1
不执行任何需要主密钥以进行安全考虑的操作。因此,如果此约束仍然存在且客户端触发的推送对您来说是一个有趣的用例,您可能需要编写服务器端Javascript云代码,然后可以使用parse4cn1
来调用以触发推送请求。
我目前正在更新parse4cn1
以启用对Parse Server的支持。但是,我认为我不会在下一个版本中更新与推送相关的功能。因此,当你向前迈进时,请记住这些可能的限制因素。如果您只对推送通知感兴趣,您可能还需要考虑其他专用推送提供程序。
一切顺利。