gpt4 book ai didi

java - 如何在Android Studio中使用.so文件中的方法?

转载 作者:太空宇宙 更新时间:2023-11-04 12:12:10 25 4
gpt4 key购买 nike

我收到了一个Eclipse项目,我已经成功导入到Android Studio中使用。唯一的问题是该项目中的类调用项目附带的 .so 文件中的某些函数。我已经好几天无法调用这些方法了。

该类(class)非常基础:

public class Conversions {

private static Conversions mCom=null;

public static Conversions getInstance(){
if(mCom==null){
mCom=new Conversions();
}
return mCom;
}

public native int StdToIso(int itype,byte[] input,byte[] output);
public native int IsoToStd(int itype,byte[] input,byte[] output);
public native int GetDataType(byte[] input);
public native int StdChangeCoord(byte[] input,int size,byte[] output,int dk);

static {
System.loadLibrary("conversions");
}
}

错误信息是:

cannot resolve corresponding JNI function ....
No JNI_OnLoad found in /data/app-lib/com.example.fpdemo-1/libfgtitinit.so 0x4cc91c70, skipping init

native 方法位于 my: 中的多个 .so 文件中:

jniLibs > armeabi > libconversions.so
jniLibs > armeabi > libfgtitinit.so

但由于某种原因,我无法读取 native 文件。我认为这可能是构建问题或环境问题。我的 Gradle 构建文件看起来像这样:

android {
compileSdkVersion 17
buildToolsVersion "24.0.2"

defaultConfig {
applicationId "com.example.fpdemo"
minSdkVersion 12
targetSdkVersion 17
}

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

dependencies {
compile 'com.android.support:support-v4:18.0.0'
compile files('libs/fgtitdevice.jar')
}

最佳答案

public class Conversions {

private static Conversions mCom=null;

public static Conversions getInstance(){
if(mCom==null){
mCom=new Conversions();
}
return mCom;
}

public native int StdToIso(int itype,byte[] input,byte[] output);
public native int IsoToStd(int itype,byte[] input,byte[] output);
public native int GetDataType(byte[] input);
public native int StdChangeCoord(byte[] input,int size,byte[] output,int dk);

static {
System.loadLibrary("conversions");
System.loadLibrary("libfgtitinit");
}
}

尝试更换它,希望它能起作用

关于java - 如何在Android Studio中使用.so文件中的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39769273/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com