HELLO-JNI样品不Android Studio中2.0 preVIEW工作 [英] Hello-jni sample doesn't work in Android Studio 2.0 Preview
问题描述
我想实现 hello- JNI
样品
到我的项目。我有摇篮
2.8和'com.android.tools.build:gradle-experimental:0.4.0
和使用 Android的工作室2.0 preVIEW 3B
。
I'm trying to implement hello-jni
sample
into my project. I have Gradle
2.8 and 'com.android.tools.build:gradle-experimental:0.4.0'
and using Android Studio 2.0 Preview 3b
.
这是我的的build.gradle
:
apply plugin: 'com.android.model.application'
model {
android {
compileSdkVersion = 23
buildToolsVersion = "23.0.2"
defaultConfig.with {
applicationId = "lala.lala"
minSdkVersion.apiLevel = 16
targetSdkVersion.apiLevel = 23
versionCode = 1
versionName = "1.0"
}
}
/*
* native build settings
*/
android.ndk {
moduleName = "hello-jni"
// cppFlags.add("-fno-rtti")
// cppFlags.add("-fno-exceptions")
// ldLibs.addAll(["android", "log"])
// stl = "system"
}
android.productFlavors {
// for detailed abiFilter descriptions, refer to "Supported ABIs" @
// https://developer.android.com/ndk/guides/abis.html#sa
create("arm") {
ndk.abiFilters.add("armeabi")
}
create("arm7") {
ndk.abiFilters.add("armeabi-v7a")
}
create("arm8") {
ndk.abiFilters.add("arm64-v8a")
}
create("x86") {
ndk.abiFilters.add("x86")
}
create("x86-64") {
ndk.abiFilters.add("x86_64")
}
create("mips") {
ndk.abiFilters.add("mips")
}
create("mips-64") {
ndk.abiFilters.add("mips64")
}
// To include all cpu architectures, leaves abiFilters empty
create("all")
}
android.buildTypes {
release {
minifyEnabled = false
//proguardFiles.add(file('proguard-rules.txt'))
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
compile 'com.android.support:cardview-v7:23.1.1'
compile 'com.android.support:recyclerview-v7:23.1.1'
compile 'com.google.android.gms:play-services-ads:8.3.0'
compile 'com.google.android.gms:play-services-analytics:8.3.0'
compile 'com.google.android.gms:play-services-appindexing:8.3.0'
}
我在 JNI
文件夹中创建 HELLO-jni.h
:
在我的code的某些部分我导入此:
In some part of my code I import this:
static {
System.loadLibrary("hello-jni");
}
public static native int testMethod();
和按 HELLO-jni.c
创建自动完成:
#include "hello-jni.h"
JNIEXPORT jintJNICALL
Java_lala_lala_HomeScreen_testMethod(JNIEnv
*env,
jclass type
)
{
// TODO
}
头文件 HELLO-jni.h
:
//
// Created by Filip on 15.12.2015..
//
#ifndef PHOTO_HELLO_JNI_H
#define PHOTO_HELLO_JNI_H
#endif //PHOTO_HELLO_JNI_H
但它不工作。它是全红:
But it doesn't work. It is full red:
什么是问题?如何解决呢?
What is problem? How to solve it?
推荐答案
这是在Android Studio中的问题,但只是在Windows上:<一href=\"https://$c$c.google.com/p/android/issues/detail?id=195483&q=label%3AReportedBy-Developer&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars\"相对=nofollow>问题195483
您可以降级到Android 1.5.1工作室,2.8的gradle,的实验包装0.4.0 。结果
我尝试过Android Studio 2.0测试版6,带包装 0.6.0-beta5的和0.6.0-beta6,但仍然无法正常工作。
It's problem in Android studio, but just on Windows: Issue 195483
You can downgrade to Android studio 1.5.1, gradle 2.8, experimental wrapper 0.4.0.
I tried Android Studio 2.0 beta 6, with wrapper 0.6.0-beta5 and 0.6.0-beta6, but still doesn't work.
这篇关于HELLO-JNI样品不Android Studio中2.0 preVIEW工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!