Android Studio und Gradle-Abhängigkeit integration
Bin ich nach dieses tutorial aber mit Android Studio. Ich habe fertig die folgenden Schritte aus:
Erstellen Sie ein neues Projekt in Android Studio
Hinzufügen der OpenCV-2.4.5-sdk/sdk/java als Modul
Rechten Maustaste auf mein Haupt-module->Ändern Sie die Modul-Einstellungen-> hinzu kommt die oben opencv-Modul als Abhängigkeit
Für meine MainActivity ich verwendete den folgenden code (abgespeckte aus einer der Proben):
package com.example.test;
import android.os.Bundle;
import android.app.Activity;
import android.util.Log;
import android.view.Menu;
import org.opencv.android.BaseLoaderCallback;
import org.opencv.android.CameraBridgeViewBase;
import org.opencv.android.CameraBridgeViewBase.CvCameraViewListener;
import org.opencv.android.LoaderCallbackInterface;
import org.opencv.android.OpenCVLoader;
import org.opencv.core.Mat;
public class MainActivity extends Activity implements CvCameraViewListener {
private CameraBridgeViewBase mOpenCvCameraView;
private BaseLoaderCallback mLoaderCallback = new BaseLoaderCallback(this) {
@Override
public void onManagerConnected(int status) {
switch (status) {
case LoaderCallbackInterface.SUCCESS:
{
Log.i("Yay", "OpenCV loaded successfully");
mOpenCvCameraView.enableView();
} break;
default:
{
super.onManagerConnected(status);
} break;
}
}
};
@Override
public void onResume()
{
super.onResume();
OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_5, this, mLoaderCallback);
}
@Override
public void onCameraViewStarted(int width, int height) {
}
@Override
public void onCameraViewStopped() {
}
@Override
public Mat onCameraFrame(Mat inputFrame) {
return null;
}
}
Android-Studio-text-editor identifizieren konnte, die Pakete, die ich importiert habe (wie org.opencv.android), aber wenn ich kompiliert habe, bekam ich diesen Fehler:
Gradle: error: package org.opencv.android does not exist
Gradle: error: package org.opencv.android does not exist
Gradle: error: package org.opencv.android.CameraBridgeViewBase does not exist
Weiß jemand, warum dies passiert?
- [Dieser link ermöglicht den Einsatz ohne Glas][1] [1]: stackoverflow.com/a/17368359/2423176
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich hatte ein ähnliches Problem mit meinem Android Studio auf OS X. ich den code schreiben, und Android Studio sehen würde .jar ' s, ich war Referenzierung, und der erklärt hatte, dass Abhängigkeiten auf, aber wenn es kam die Zeit für Gradle um das Projekt zu erstellen, nicht gehen.
Öffnete ich die " build.gradle " - Datei, und musste manuell hinzufügen von Abhängigkeiten. Zum Beispiel, hier ist meine komplette Datei:
Als Sie sich vorstellen können, die Zeilen habe ich Hinzugefügt, diejenigen sind, die Referenzierung Gson und Jsoup.
A problem occurred configuring the project ':OpenCV' - Main manifest missing from /.../OpenCV/src/main/AndroidManifest.xml
Irgendwelche Ideen?Inspiriert von diese Antwort, diese sind die Schritte, die ich gemacht habe:
compile files('libs/opencv-library-2.4.5.jar')
Nun, das Projekt gebaut werden sollte und laufen einwandfrei.
Hinweis: In späteren Versionen von OpenCV (e.g 2.4.7), die Bibliothek gefunden werden kann, in
...\build\java
.Ich lief in ein ähnliches problem.
In meinem Fall war es Android Studio Fehler beim hinzufügen des Gradle-Abhängigkeit für mich. Ich hatte, um es mir in meinem Projekt die gradle-Datei:
Es das problem gelöst. Ich hoffe, das hilft.
Neueren gelöst ich das oben beschriebene problem:
dann alles geklappt hat.
Die opencv-Bibliothek ist in einem anderen Modul in mein Projekt
Habe ich einen workaround gefunden und jetzt funktioniert alles.
Hatte ich zu build eine Jar-Datei (openCV.jar -) und dann habe ich es als eine Bibliothek anstelle eines Moduls, die schließlich in der gradle.build-Datei fügte ich diese Zeile
compile files('libs/openCV.jar')
.So, endlich komme ich zu verwenden, der code der Bibliothek und mein build ist Ok.
Ich weiß nicht, ob das gut ist. Aber das ist, wie ich es Tat. Hoffe, es hilft.
Versuchen, Hinzufügen, um die Abhängigkeit in Android Studio ist fruchtlosem es ist ein bug.
Versuchen Sie dies:
Download OpenCV-2.4.5-android-sdk.zip von OpenCV
Website
Extrahieren, wo immer wie OpenCV-2.4.5-android-sdk, mir war
Öffnen IntelliJ, und wählen Sie Importieren
Wählen Sie den Ordner importieren
Ihre wird ein wenig anders sein,
keine Sorge, wählen Sie einfach, wo Sie
extrahiert OpenCV-2.4.5-android-sdk
Sobald der Import-Assistent beendet ist, erstellen Sie die app mit Menü
mir war die sdk.iml, aber Sie könnte alles sein, aber es wird nur eine
Können Sie jetzt mit OpenCV-Funktionen, start durch Eingabe von
sobald Sie geben Sie den Zeitraum IntelliJ fallen sollten eine Liste von Optionen, von denen
Der rest ist bis zu Ihnen.
in meinem intellij IDE, die ich wie folgt behoben:
- zeigen Sie auf die app (in Ihrem Projekt) und klicken Sie auf F4 (Module Einstellung fokussiert ist Standard)
- wählen Sie Android-Gradle
- wählen Sie die Registerkarte Abhängigkeiten
- fügen Sie (markieren + button in der rechten oberen) Abhängigkeit : Sie können wählen, hinzufügen von maven, einer Datei, oder ... hängt von Ihnen ab. In meinem Fall füge ich neue opencsv von maven.
- klicken Sie auf OK, um zu beenden, Ihr Projekt neu erstellen, automatisch.
GETAN.