Hi Maurice,
Can you clarify what do you mean when you say "My issue is that when I try
to compile the app, it fails, saying that my SDK packages do not exist."?
Does your app contains C++ code that depends on the SDK? Or is it pure
Java and uses the Java wrapper provided by the SDK?
It should work if it's the latter. Please let me know the error message
you see. Thanks.
Raymond
On Friday, November 6, 2015 at 7:53:57 AM UTC-8, Maurice Wingbermühle wrote:
>
> Hi Guys,
>
> I'm working on converting a existing Eclipse project to Android Studio, to
> be able to debug my C++ SDK more easily.
> We already have it compiling with the Android NDK for well over a year
> using a set of Android.mk files, but for this case, we want to be able to
> embed the SDK in an Android app to test and debug.
>
> I'm using Android Studio 1.5 beta and currently Gradle 2.6 and
> gradle-experimental:0.3.0-alpha7 wrapper.
>
> I also have a project in Android Studio already, in which I jammed all
> sources together in 1 module, but the project is packed with symlinks and
> is not really portable, and hard to setup for other developers.
> So I decided to start over and build the project configuration from ground
> up. I'm using a Android Library Module for the SDK, which is used by the
> Android Application module (test app).
>
> The SDK module consists of a C++ core, with a JNI and Java wrapper around
> it.
> The module compiles and works fine - all output is nicely generated into
> an AAR file in build/outputs/aar/
>
> My issue is that when I try to compile the app, it fails, saying that my
> SDK packages do not exist.
>
> My app gradle files looks like this:
>
> apply plugin: 'com.android.model.application'
>
> model {
> android {
> compileSdkVersion = 19
> buildToolsVersion = "23.0.1"
>
> defaultConfig.with {
> applicationId = "com.mycompany.myapp"
> minSdkVersion.apiLevel = 15
> targetSdkVersion.apiLevel = 19
> versionCode = 1
> versionName = "1.0"
> }
>
> }
>
> android.buildTypes {
> release {
> minifyEnabled = false
> proguardFiles += file('proguard-rules.pro')
> }
> debug {
> debuggable = true
> ndk.with {
> debuggable = true
> }
> }
> }
>
> android.sources {
> main {
> java {
> source {
> srcDirs += 'src'
> }
> }
> }
> }
> }
>
> dependencies {
> compile project(':sdk')
> compile project(':sdk-testing')
> compile fileTree(dir: 'libs', include: ['*.jar'])
> compile 'com.android.support:support-v4:19.1.0'
> compile 'com.android.support:appcompat-v7:19.1.0'
> }
>
> tasks.withType(JavaCompile) {
> sourceCompatibility = JavaVersion.VERSION_1_7
> targetCompatibility = JavaVersion.VERSION_1_7
> }
>
>
>
> My SDK gradle files looks like this:
>
>
> apply plugin: 'com.android.model.library'
>
> model {
> android {
> compileSdkVersion = 19
> buildToolsVersion = "23.0.1"
>
> defaultConfig.with {
> versionName = '1.0'
> }
> }
>
> android.ndk {
> moduleName = "sdk"
> toolchain = "gcc"
> cppFlags += ["-D ANDROID_LOGCAT=1",
> "-DGRADLE",
> "-std=c++11",
> "-frtti",
> "-fexceptions",
> "-I${projectDir}/../../../".toString(),
> "-I${projectDir}/../../../src".toString(),
> ldFlags += ["-Lsrc/main/jniLibs/armeabi"]
> ldLibs += ["log", "atomic"]
> stl = "c++_shared"
> }
>
> android.sources {
> main {
> // Java sources
> java.source.srcDirs += '../../../external/src'
>
> // local folder with symlinks, created by gradle task
> :sdk:createLinks
> jni.source.srcDirs += 'src/cpp'
> }
> }
>
> android.productFlavors {
> create("all") {
> }
> }
>
> android.buildTypes {
> release {
> minifyEnabled = false
> }
> debug {
> debuggable = true
> ndk.with {
> debuggable = true
> }
> }
> }
> }
>
> dependencies {
> compile fileTree(dir: 'libs', include: ['*.jar'])
> }
>
> tasks.withType(JavaCompile) {
> sourceCompatibility = JavaVersion.VERSION_1_7
> targetCompatibility = JavaVersion.VERSION_1_7
> }
>
> task createLinks(type:Exec) {
> workingDir 'scripts'
> commandLine './createLinks.sh'
>
> standardOutput = new ByteArrayOutputStream()
> ext.output = {
> return standardOutput.toString()
> }
> }
>
> tasks.whenTaskAdded { task
>
> ...
--
You received this message because you are subscribed to the Google Groups
"adt-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.