草庐IT

check_jni

全部标签

为 AppBarLayout 设置 elevation/StateListAnimator 时 Android JNI 崩溃

我正在尝试将AppBarLayout的高度设置为0(然后返回到默认值)。它在API21(>=22等工作正常)上有时(不总是)和仅崩溃。我正在使用StateListAnimator,如下面的链接所述(因为这是自support-lib24.0.0以来设置高度的“官方”方式):https://stackoverflow.com/a/37992366/2170109我的实际方法是这样的:publicvoidsetAppBarElevation(finalbooleanvisible){if(appBar!=null&&Build.VERSION.SDK_INT>=Build.VERSION_C

Android jni引用第三方so动态库和.a静态库并且调用(c)方法

最近花了一周时间来入门学习AndroidJNI方面的知识,因为后续的工作很多需要用到cc++库,我需要用jni来包装一下c函数,来提供给上次java调用。总之多学点知识对自己有好处。案例效果:上文我们讲解了androidstudiocmake生成.a文件(静态库)及调用(cc++)静态库.a本文接着上文,这次我们利用JNI来引用第三方动态库so文件,并且让Java调用它的函数。第一步:生成.so动态库文件编写C文件和头文件DynamicLibraryTest.h////CreatedbyAdministratoron2023/9/5/005.//#ifndefANDROIDCMAKE_DYNA

android - 谷歌播放 : You need to check the icon inside your APK because it is not valid

在GooglePlay开发者控制台中上传APK文件时出现以下错误:UploadfailedYouneedtochecktheiconinsideyourAPKbecauseitisnotvalid.我发现的关于SO的所有答案似乎都建议您必须将VectorDrawable图标转换为PNG才能消除此错误。为什么有必要?VectorDrawables的全部意义不就是避免手动生成PNG吗?编辑:将我的应用程序图标转换为PNG确实有所帮助。但我仍然不明白为什么这是必要的。AndroidStudio不是应该在构建时生成PNG吗? 最佳答案 开发

android - no concrypt_openjdk_jni in java.library.path 错误如何解决?

我想签署我的apk,所以我执行了以下命令:java-jarsignapk.jarplatform.x509.pemplatform.pk8app-debug.apk~/Desktop/test.apk但是我得到了以下错误:Exceptioninthread"main"java.lang.UnsatisfiedLinkError:noconscrypt_openjdk_jniinjava.library.pathatjava.lang.ClassLoader.loadLibrary(ClassLoader.java:1867)atjava.lang.Runtime.loadLibrary

android - 调用 CallVoidMethod 时 JNI 崩溃

我正在尝试从Android应用程序中的nativeC代码调用java方法。使用JNI这听起来很简单,但我的代码在最终调用方法本身时总是崩溃。这是我的代码:nativeC代码:JNIEXPORTvoidJNICALLJava_com_path_to_my_package_renderStuff(JNIEnv*env,jobjectjobj){//...jclassclazz=env->FindClass("com/path/to/the/class");jmethodIDshowCar=env->GetMethodID(clazz,"showCar","()V");env->CallVo

android - 将 Android Studio 更新到 0.4.0 后,如何解决运行 ./gradle check connectedCheck 的错误?

AndroidStudio更新后,我将wrapper中的gradle更新为1.9,并在build.gradle的依赖项中更新为0.7.+。从那以后,我在运行./gradlewcheckconnectedCheck时得到这个错误FAILURE:Buildfailedwithanexception.*Whatwentwrong:Executionfailedfortask':app:lint'.>LintfounderrorswithabortOnError=true;abortingbuild.编辑gradle控制台还显示这些消息:Ranlintonvariantrelease:69is

android - JNI 警告预期返回类型 'L' 调用 LocationManager.requestLocationUpdates

我正在使用Necessitas(Android中的QT)。基本上,使用AndroidNDK,androidActivity调用QT应用程序(.so)。我正在为GPS开发一些绑定(bind)。我想我到了那里,但是当我调用方法requestLocationUpdates(String,Long,Float,LocationListener)时,我收到了JNI警告(JNI警告预期返回类型“L”)。部分代码如下:midGetSystemService=currEnv->GetMethodID(actClass,"getSystemService","(Ljava/lang/String;)Lj

android - 如何在 JNI 中将 char[] 转换为 jstring?

在jni中,我想使用以下方法将char*转换为jstring:env->NewStringUTF(chm_pcText)它适用于英文文本,但对于中文文本失败,并得到以下消息:JNIWARNING:illegalcontinuationbyte.如何解决? 最佳答案 我只是解决它:两步,首先:将char*转换为jbyteArray,然后调用javaString的constructor生成jstring。strClass=global_env->FindClass("java/lang/String");ctorID=global_en

android - 一旦在编辑器中打开 C 文件,C JNI 代码就会在 Android Eclipse 项目中引入错误

这个问题在这里已经有了答案:Eclipsecompilessuccessfullybutstillgivessemanticerrors(8个答案)关闭6年前。我在Eclipse中设置了一个Android项目,它使用JNI访问C代码,在我打开其中一个C文件之前一切正常。完成后我得到这些错误:我尝试了很多东西,包括这个:SurprisebehaviorofeclipseforCfileswhileusingJNI,Whyso?我的NDK路径也是这样设置的:有人解决这个问题吗?请注意,关闭项目并重新打开会使问题消失,但一旦打开C源文件,问题就会再次出现。另请注意,如果我不打开C文件,该项目

android - Android 中的 FFMpeg jni?

我构建了Bambuser(http://bambuser.com/opensource)提供的FFMPEG可执行文件和库。所以我设法构建了Android可执行文件和库。如何在我的Eclipse项目中链接这些库并从Java调用FFmpeg函数?开源代码包括C头文件。我是Android原生编码的新手,对此我找不到简单的答案。基本:拥有一堆Android兼容库和一些C头文件,我需要做什么才能从java(+AndroidSDK)重用这些库的功能?如有任何帮助,我们将不胜感激。亲切的问候,为什么如何 最佳答案 您必须使用JNI约定编写一些C粘