Felix Hegg
Felix Hegg

Reputation: 367

Adding opencv to android studio: Dependent features configured but no package ID was set

I am trying to add OpenCV to my AndroidStudio project. However, I get the error mentioned above, when trying to build the project: "Dependent features configured but no package ID was set."

I used the following link for the implementation: https://android.jlelse.eu/a-beginners-guide-to-setting-up-opencv-android-library-on-android-studio-19794e220f3c I was not able to follow step 5, because there was no option to choose from. It was just a blank screen. I assumed, that AndroidStudio already performed that step automatically. I was able to access Objects from openCv like "Mat", but when building the project, I got the error mentioned above.

If you need more information, please let me know.

Upvotes: 2

Views: 3999

Answers (2)

Jyoti Prajapati
Jyoti Prajapati

Reputation: 161

It happens with my project also so i doing few changes inside my build.gradle file inside the java file. you can try this also Project Folder->java->build.gradle file

open this file and edit the file like this - apply plugin: 'com.android.library'

android {
    compileSdkVersion 29
    buildToolsVersion "29.0.2"

    defaultConfig {
        //applicationId "org.opencv"
        minSdkVersion 16
        targetSdkVersion 29
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}

try this maybe its helpful for you

Upvotes: 2

0xDEADBEEF
0xDEADBEEF

Reputation: 590

Hello I experience this problem also. The link you provide does not work on version 4.+.+ of opencv. I found there is a tutorial in build.gradle, inside the sdk folder(sdk/build.gradle). Unload your sdk and try following the latest tutorial inside the sdk folder.

// This file is part of OpenCV project.
// It is subject to the license terms in the LICENSE file found in the top-level directory
// of this distribution and at http://opencv.org/license.html.

//
// Notes about integration OpenCV into existed Android Studio application project are below (application 'app' module should exist).
//
// This file is located in <OpenCV-android-sdk>/sdk directory (near 'etc', 'java', 'native' subdirectories)
//
// Add module into Android Studio application project:
//
// - Android Studio way:
//   (will copy almost all OpenCV Android SDK into your project, ~200Mb)
//
//   Import module: Menu -> "File" -> "New" -> "Module" -> "Import Gradle project":
//   Source directory: select this "sdk" directory
//   Module name: ":opencv"
//
// - or attach library module from OpenCV Android SDK
//   (without copying into application project directory, allow to share the same module between projects)
//
//   Edit "settings.gradle" and add these lines:
//
//   def opencvsdk='<path_to_opencv_android_sdk_rootdir>'
//   // You can put declaration above into gradle.properties file instead (including file in HOME directory),
//   // but without 'def' and apostrophe symbols ('): opencvsdk=<path_to_opencv_android_sdk_rootdir>
//   include ':opencv'
//   project(':opencv').projectDir = new File(opencvsdk + '/sdk')
//
//
//
// Add dependency into application module:
//
// - Android Studio way:
//   "Open Module Settings" (F4) -> "Dependencies" tab
//
// - or add "project(':opencv')" dependency into app/build.gradle:
//
//   dependencies {
//       implementation fileTree(dir: 'libs', include: ['*.jar'])
//       ...
//       implementation project(':opencv')
//   }
//
//
//
// Load OpenCV native library before using:
//
// - avoid using of "OpenCVLoader.initAsync()" approach - it is deprecated
//   It may load library with different version (from OpenCV Android Manager, which is installed separatelly on device)
//
// - use "System.loadLibrary("opencv_java4")" or "OpenCVLoader.initDebug()"

Upvotes: 1

Related Questions