java - JNIEnv FindClass 找不到我的包类
问题描述
我在 Android Studio 中构建 Android NDK 应用程序。我已经进行了子类化NativeActivity
以将一些 Java 代码添加到我的应用程序中。而且我无法JNIEnv::FindClass
在 C++ 端获得这个活动类。我知道:
- 我只能在 Java 线程中调用 FindClass(我这样做)
- 我应该使用全
/
分隔路径到我的班级(/com/my_package/MyActivity
) - 该类应该是公开的(不确定是否真的应该公开,但它是公开的,以防万一)
此外,FindClass
对于“内置”类,如android/net/Uri
,android/content/Intent
等也可以正常工作。我可以从 C++ 调用 Java 方法——一切正常。但是FindClass
对于我自己的课程不起作用。
谷歌搜索类似的错误与我的情况不符。至少我的发现没有任何帮助。我在 Windows 7 中工作(不确定是否重要)。
解决方案
推荐阅读
- android - Google 云存储 - 从 Android 应用下载对象
- elasticsearch - 创建 ElasticSearch 域时出错:ValidationException:身份验证错误
- css - Flex 在较大的断点处包装项目,而在最小处溢出滚动
- flutter - 错误:入口点不包含主函数 Flutter
- mysql - 通过 AWS RDS 在 Kubernetes 上使用 MySQL 的 SonarQube
- python - 使用 jupyter-matplotlib 时删除工具栏和图形标题
- excel - 在 Excel 中使用条件格式仅在满足 2 个条件时才格式化单元格
- tfs - 拉取请求权限
- python - 我如何为我的工作部署这个应用程序:EC2、Elastic Beanstalk,完全是其他东西?
- php - 数据库连接和 SELECT