Android的NDK:没有找到实现本机XXXXXX [英] Android NDK: No implementation found for native xxxxxx
本文介绍了Android的NDK:没有找到实现本机XXXXXX的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我做一个项目使用的苔丝二,我想使用的方法 pixConvertRGBToLuminance
,但它总是错误:
没有找到实现原生LCOM /谷歌code / leptonica /安卓/像素; .nativePixConvertRGBToLuminance:(一)我。
ç的Java我的$ C $是:
公共静态Pix的pixConvertRGBToLuminance(Pix的pixs){
如果(pixs == NULL)
抛出新抛出:IllegalArgumentException(源PIX必须为非空);
INT nativePixd = nativePixConvertRGBToLuminance(pixs.getNativePix());
返回新Pix的(nativePixd);
}
我的code的.cpp是:
jint Java_com_google code_letonica_android_Pix_nativePixConvertRGBToLuminance(JNIEnv的* ENV,
JCLASS clazz中,jint nativePixs){
PIX * pixs =(PIX *)nativePixs;
LOGE(------------------>无法找到本地pixConvertRGBToLuminance文件);
PIX * pixd = pixConvertRGBToLuminance(pixs);
返回(jint)pixd;
}
Leptonica的原来的code是:
PIX * pixConvertRGBToLuminance(PIX * pixs)
{
返回pixConvertRGBToGray(pixs,0.0,0.0,0.0);
}`
为什么我总是有错吗?THX。
解决方案
的externCjint Java_com_google code_letonica_android_Pix_nativePixConvertRGBToLuminance(JNIEnv的* ENV,
JCLASS clazz中,jint nativePixs){
PIX * pixs =(PIX *)nativePixs;
LOGE(------------------>无法找到本地pixConvertRGBToLuminance文件);
PIX * pixd = pixConvertRGBToLuminance(pixs);
返回(jint)pixd;
}
请参照<一href="http://stackoverflow.com/questions/9428001/calling-a-java-function-from-c-on-android-over-jni">Calling从C ++在Android的Java函数通过JNI
I do a project in using Tess-two, i want to use the method pixConvertRGBToLuminance
, but it always the error:
No implementation found for native Lcom/googlecode/leptonica/android/Pix;.nativePixConvertRGBToLuminance:(I)I.
My code Java is:
public static Pix pixConvertRGBToLuminance(Pix pixs){
if (pixs == null)
throw new IllegalArgumentException("Source pix must be non-null");
int nativePixd = nativePixConvertRGBToLuminance(pixs.getNativePix());
return new Pix(nativePixd);
}
My code .cpp is:
jint Java_com_googlecode_letonica_android_Pix_nativePixConvertRGBToLuminance(JNIEnv *env,
jclass clazz, jint nativePixs){
PIX *pixs = (PIX *)nativePixs;
LOGE("------------------>Failed to find native pixConvertRGBToLuminance File");
PIX *pixd = pixConvertRGBToLuminance(pixs);
return (jint) pixd;
}
The original code of Leptonica is :
PIX * pixConvertRGBToLuminance(PIX *pixs)
{
return pixConvertRGBToGray(pixs, 0.0, 0.0, 0.0);
}`
so why I always have the fault?Thx.
解决方案
extern "C" jint Java_com_googlecode_letonica_android_Pix_nativePixConvertRGBToLuminance(JNIEnv *env,
jclass clazz, jint nativePixs){
PIX *pixs = (PIX *)nativePixs;
LOGE("------------------>Failed to find native pixConvertRGBToLuminance File");
PIX *pixd = pixConvertRGBToLuminance(pixs);
return (jint) pixd;
}
Refer Calling a Java function from C++ on Android over JNI
这篇关于Android的NDK:没有找到实现本机XXXXXX的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文