2017-11-01 2 views
1

Update auf Android Studio 3.0.0 mit neuen Android Gradle Plugin. Während buildin Projekt Nachricht bekam:Aktualisiert Android Studio und bekam mit Gstreamer Build

What went wrong: 
Execution failed for task `':app:externalNativeBuildDebug'`. 

Expected output file at `gst-build-arm64-v8a/libgstreamer_android.so` for target `gstreamer_android` but there was none 

aber libgstreamer_android.so Bibliotheksdatei ist schon da. Für nativen Code verwende ich ndk-build. Hat jemand dieses Problem?

+0

Ich habe genau das gleiche Problem und ich versuche es herauszufinden ... Ich habe bereits versucht, Gradle 4.3 anstelle von 4.1 zu verwenden, zu säubern, neu aufzubauen, das Projekt neu zu verknüpfen ... Ich denke, ich werde es tun versuchen Downgrade das Android-Plugin 3.0, während ich keine bessere Lösung finden –

+0

@ EduardoFernando, schau auf meine Antwort, bitte. – Valery

Antwort

3

Zur Build.Gradle-Datei unserer Android-Modul Feldziele hinzufügen.

android { 
    defaultConfig { 
    externalNativeBuild { 
     ndkBuild { 
     targets "name_of_native_module_in_android_mk_file" 
     } 
    ... 
} 

Sie gstreamer_android nicht hinzufügen.

+0

Ich habe einige Fragen ... Erstens: Es ist auf (build.grade Modul: app) rigth? Zweitens: Mein externalNativeBuild {} ist nicht in defaultConfig {} ... es ist auf Android {} ... Sollte ich es von Android {} löschen und es auf Android {defaultConfig {}} ?? Drittens: Inside externalNativeBuild {ndkBuild {}} gibt es "Pfad 'src/main/jni/Android.mk'" Sollte ich es dort behalten oder lösche, füge nur den Befehl mit "targets" hinzu? Forth: Was ist und wo ist der "Name_of_native_module_in_android_mk_file"? Ist es in "LOCAL_MODULE" Variable? –

+1

@ EduardoFernando, 1. in Modell mit Gstreamer Nutzung. 2. externalNativeBuild in der Anwendung hold Pfad zu Android.mk Datei, externalNativeBuild in Standardkonfiguration Ich habe Ziele (native Module) und ABI-Filter beschrieben. Ich hoffe, es wird helfen. Sie – Valery

0

UPDATE: Valerys Antwort funktioniert!

Veraltet Antwort:
Das ist nicht der perfekte fix, es ist nur temporäre, bis ich Zeit, einen tiefen Einblick in das Problem zu nehmen.
Ihre gradle Plugin degradieren:

  1. Datei -> Projektstruktur
  2. Klicken Sie auf "Projekt"
  3. Bei "Gradle Version" Feld put:
    • 3,3
  4. Bei Feld "Android Plugin Version":
    • 2.3.3
  5. Hit "OK"

die Nachrichten übernehmen, synchronisieren Sie das Projekt, etc ... Android Studio Update gradle Plugin auffordern kann wieder ein windown zu fragen, nur don‘ t akzeptieren es jetzt ...
ich das Update auf gradle denke, die Art und Weise verändert das gemacht baut, vielleicht etwas auf Android.mk wird sich ändern müssen oder einige andere Parameter auf build.grade ...

edit: Ich habe ein paar Clu gefunden e an: https://developer.android.com/studio/build/gradle-plugin-3-0-0-migration.html

API ändert
Android-Plugin 3.0.0 API stellt Änderungen, die bestimmte Funktionalitäten entfernt und brechen können Ihre bestehende baut. Später können Versionen des Plugins neue öffentliche APIs einführen, die defekte Funktionen ersetzen.

Das Ändern von Variantenausgaben zur Erstellungszeit funktioniert möglicherweise nicht Die Verwendung der Variante API zum Manipulieren von Variantenausgängen ist mit dem neuen Plugin nicht möglich. Es funktioniert immer noch für einfache Aufgaben, wie die APK Namen während Kompilierzeit zu ändern, wie unten dargestellt: ...

Also, ich denke wir die temporäre Lösung (nicht aktualisierte Version von gradle) unter Verwendung behalten sollen ...

+0

Ich habe * .so Dateien gefunden, die bei 'app/build/intermediates/ndkBuild/debug/obj/local/arm64-v8a/objs-debug/* .so' liegen, aber nicht wissen, wie man sie beim Erstellen eines Projekts verwendet – Valery

Verwandte Themen