2017-01-26 3 views
0

Ich baute ein natives Plugin (Shared Library, .so) für ARM64-v8 auf Android-Plattform.Warum kann Unity3D nur 32-Bit-natives Plugin (.so) auf Android-Plattform laden?

Es funktioniert gut mit den einfachen Android-Apps.

Aber, wenn Unity3D es lädt, habe ich gerade eine Fehlermeldung mit "... .so ist 64-Bit statt 32-Bit ....".

Ich habe gerade versucht, il2cpp zu verwenden, um die 64-Bit-App mit Unity3D zu bauen, aber es funktioniert auch nicht.

Unterstützt Unity3D nicht 64-Bit-natives Plugin auf Android-Plattform?

Oder

Wie kann ich es verwenden, nativen 64-Bit-Plugin auf Android-Plattform?

Bitte lassen Sie mich eine Idee bekommen.

Danke.

Derzeit sind die Werkzeuge, was ich sind wie folgt verwendet werden:

OS - Windows-10 64-Bit-

Unity3D (? Editor) - 5.5.03f Personal (64-Bit)

AndroidNDK64 - android NDK r10e für il2cpp

+0

In welchem ​​Verzeichnis in Ihrem Unity-Projekt haben Sie das .so-Plugin abgelegt? – Programmer

+0

@Programmer Ich habe es gerade in Assets/Plugins versucht. – TwisTeDStRiDeR

+0

Nein. Es gibt zwei bekannte gültige [Verzeichnis] ​​(https://docs.unity3d.com/Manual/PluginsForAndroid.html) für Android-Plugin. 'Assets/Plugins/Android/libs/x86 /' ** und ** 'Assets/Plugins/Android/libs/armeabi-v7a /'. Setzen Sie es in 'Assets/Plugins/Android/libs/x86_64 /'. Lassen Sie mich wissen, ob das tatsächlich funktioniert. x86_64 ist für 64 Bit. Vielleicht wird es nicht unterstützt, aber versuchen Sie es zuerst. – Programmer

Antwort

2

Unity unterstützt derzeit keine nativen 64-Bit-Plugins auf Android. Sie müssen also eine 32-Bit-Version verwenden. Beachten Sie die Werte für die Option "Architektur" in den Player-Einstellungen für das Android-Ziel (im Unity-Editor). Sie sind ARMv7 und x86, beide 32-Bit-Architekturen.

Unity könnte in Zukunft 64-Bit-Ziele für Android unterstützen, aber ich kenne keine aktuellen Pläne dazu.

+0

Das habe ich mir gedacht. Was passiert, wenn Sie im Ordner "Assets/Plugins/Android" einen Ordner "[' x86_64'] (https://developer.android.com/ndk/guides/x86-64.html#over) erstellen? Ob das funktioniert? – Programmer

+0

Danke, Josh. Dann funktioniert ** il2cpp ** nur auf ** iOS **, um eine für 64-Bit-Architektur zu erstellen? – TwisTeDStRiDeR

+0

@Programmer Nein, das macht 64-Bit-Plugins nicht auf Android funktionieren. Sie werden einfach nicht unterstützt. –