草庐IT

JNI_ASSERT

全部标签

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粘

java - Android 如何处理多个实例数据/身份和 JNI

这是一个良好实践和智能解决方案的问题,我需要一个建议。我有一个应用程序(据我在Stackoverflow和Google搜索中所见):该应用程序处理各种文档,我喜欢它可以同时处理多个文档。(我习惯了Win32,其中每个实例有一个程序段和一个数据段,但在Android/Java中显然不是这种情况。)我看到一个实例从应用存储(平板电脑)启动应用,另一个打开Gmail或带有附加文档文件的电子邮件,第三个实例从ES文件浏览器等文件处理应用打开文件。我喜欢它们都可以在两者之间翻转。用户可能希望一次阅读多个文档。(如果我在Android/Java环境中使用了单词实例错误,请纠正我)该应用程序构建在包

安卓 JNI : GetObjectClass crashes with SIGSEGV (not a valid JNI reference)

我正在尝试创建一个新线程,因此我将VM从我的方法初始化(从Java调用)传递到我的新线程。在线程中,我调用AttachCurrentThread并获取JNIEnv*env。稍后,我尝试使用环境调用GetObjectClass,但它崩溃了。我相信这是因为对象可能未初始化,但我正在尝试调用在包含native方法的类中定义的方法。我一直在尝试遵循http://java.sun.com/docs/books/jni/html/fldmeth.html的第4.2节(开头).非常奇怪的事情:我正在使用运行2.2的HTCDream进行测试并且以下代码不会崩溃,但是使用运行2.2.2的摩托罗拉Droi

android - 使用 C++ (JNI) 从 Java 对象读取整数字段

我正在尝试从C++访问Java类中的“int”字段;其实我也尝试过其他类型。不过我可以调用方法。但不能访问字段。我得到的是随机垃圾值,而不是我期望的值。这是我的Java代码:privateclassMYViewextendsView{publicMYView(Contextcontext){super(context);five=555;}publicintfive;....}C++部分:jobjectview=(jobject)Env->CallObjectMethod(Obj,jfindViewById,3);ClassMYView=Env->GetObjectClass(view

android - JNI 错误(应用程序错误): accessed stale local reference 0xbc00021 (index 8 in a table of size 8)

我从本书Android应用程序和温度转换器应用程序中制作了helloworld应用程序fromhere两者都在模拟器上运行良好,但是当我尝试在SamsungNote2上运行它时,LogCat出现以下错误02-0807:22:18.665:E/dalvikvm(30944):JNIERROR(appbug):accessedstalelocalreference0xbc00021(index8inatableofsize8)02-0807:22:18.665:E/dalvikvm(30944):VMaborting02-0807:22:18.665:A/libc(30944):Fatal

javascript - Android 的 JNI JavaScript 绑定(bind)是否有效地将 TypedArray/ArrayBuffer 作为数组传递给 Java?

在AndroidJNI绑定(bind)中,您可以将Java方法(例如method(int[]intArray){}公开给JavaScript,将其传递给JavaScript数组,并期望绑定(bind)转换该JavaScript数组到int[]。Android是否具有相同的处理方式?Uint8Array()? 最佳答案 在Android的WebView中运行的JavaScript引擎不支持Uint8Arrays或任何其他类型的数组(从2.3.3开始)。编辑:我用模拟器做了更多测试,我有混合的东西要报告。从好的方面来说,Android3

android - ReferenceTable 溢出(最大值=512)JNI

我有点被这个困住了......ReferenceTable溢出(最大值=512),我确信它与在我的native方法调用中创建的本地引用数有关......为了解决这个问题,我什至尝试从native调用中删除本地引用;但我仍然无法解决问题......我正在传递一个二维数组;大约是1024X1024...这是我指的错误跟踪...我确信创建的整数对象的数量导致了我的问题...正如您应该能够看到506(I)对象已创建。..然后JNI遇到了瓶颈....../dalvikvm(9498):GC_CONCURRENTfreed1981K,41%free6891K/11527K,external1625

Android 如何读取 JNI 核心转储文件

我正在编写JNI应用程序。logcat表示日志文件存在data/log/dumpstate_app_native.txt还有系统墓碑中的东西。当我访问SamsungInfuse作为媒体设备时,我没有看到任何此类文件。事实上,我也没有看到我的应用程序数据文件吗?他们在哪里,我确实看到了其他应用程序包,但在数据周期下并不多。这是我在logcat中看到的内容:dumpstate/data/log/dumpstate_app_native.txt将/data/tombstones/tombstone_01复制到DropBox(SYSTEM_TOMBSTONE)将堆栈跟踪写入'/data/anr

Java 断言 assert 你真的会用嘛?

Javaassert断言机制是Java5中推出的新特性,它主要用于在程序运行时检查状态或假设的正确性,并在不正确时抛出AssertionError异常。使用assert断言可以使代码更加健壮、可靠,提高程序的可维护性和可读性。本篇文章将全面详细地讲解Javaassert断言机制,包括断言概述、语法规则、工作原理、使用场景、注意事项以及示例代码等方面。一、断言概述1.1什么是断言?断言是编程中常用的一种技术手段,它用于在程序执行时验证某些条件是否满足。如果条件成立,则程序继续执行;否则程序抛出异常或直接终止。Java断言机制就是一个典型的断言实现,在代码中使用assert断言关键字定义一个条件表