2016-04-15 11 views
1

Ich habe versucht, Unterstützung für Parse Push in meiner App zu integrieren, die Anweisungen von this wiki bei GitHub folgen. Wenn für Android bauen, war der letzte Stein des Anstoßes diese Fehlermeldung im Buildprotokoll:Anwendungsname in AndroidManifest beim Erstellen mit multiidex = true

Attribut „name“ gebunden Namensraum „http://schemas.android.com/apk/res/android“ bereits für Element „Anwendung“ angegeben wurde.

Es stellte sich heraus, dass die Kombination des Build-Hinweis

codename1.arg.android.multidex=true 

und

codename1.arg.android.xapplication_attr=android\:name\="com.parse4cn1.nativeinterface.CN1AndroidApplication" 

dieses Problem verursacht. Mit multidex eingeschaltet wird, wird der Name der Anwendung android.support.multidex.MultiDexApplication

ich es gelöst, indem zu false Einstellung, aber was ist, wenn ich es true sein muß?

+0

Hinzugefügt parse4cn1 tag –

Antwort

1

Ich glaube nicht, dass es sich um den Multi-Dex-Prozess handelt. Das parse4cn1-Wiki erwähnt die Änderung android.xapplication_attr, von der ich annehme, dass Sie das Namensattribut hinzugefügt haben. Das ist falsch, da es den Namen in eine Aktivität einfügt, die bereits benannt ist.

+0

Ich denke, ich habe das Wiki nicht gründlich genug gelesen. Es erwähnt den Fall, in dem Sie bereits eine Anwendungsklasse haben, was bei 'multidex = true' der Fall zu sein scheint. –

1

Schön zu sehen, dass Sie eine Lösung für das Problem gefunden haben. Sie haben erwähnt, dass Sie Parse.com für Push-Benachrichtigungen verwenden. Bitte beachten Sie, dass Parse.com shutting down soon ist. Momentan unterstützt der Open-Source-Parse-Server nur Push-Benachrichtigungen für Android und iOS (nicht Windows Phone). Darüber hinaus führt Parse Server eine constraint ein, die in Parse.com nicht vorhanden ist, nämlich: Sie müssen den Hauptschlüssel Ihrer App bereitstellen, um Push-Benachrichtigungen von der Clientseite auszulösen.

Standardmäßig führt parse4cn1 keine Vorgänge aus, bei denen aus Sicherheitsgründen der Hauptschlüssel erforderlich ist. Wenn diese Einschränkung bestehen bleibt und vom Client ausgelöster Push ein interessanter Anwendungsfall für Sie ist, müssen Sie wahrscheinlich serverseitigen JavaScript-Cloud-Code schreiben, den Sie dann mit parse4cn1 aufrufen können, um Ihre Push-Anforderungen auszulösen.

Ich bin gerade dabei, parse4cn1 zu aktualisieren, um die Unterstützung für Parse Server zu aktivieren. Ich denke jedoch nicht, dass ich die Push-Funktionalität in der nächsten Version aktualisieren werde. Berücksichtigen Sie diese möglichen Einschränkungen bei Ihrer weiteren Entwicklung. Wenn Sie nur an Push-Benachrichtigungen interessiert sind, sollten Sie auch andere dedizierte Push-Anbieter in Betracht ziehen.

Alles Gute.

+0

Vielen Dank, mir war das Hauptschlüsselproblem in Parse Server nicht bekannt. Vielleicht werde ich mir einige der anderen Anbieter ansehen. –