我想知道是否有一种方法可以从本机代码访问R类属性,我需要它来读取一些生成的ID,这些ID可能会在我每次执行项目的干净构建时发生变化,我宁愿不传递它们手动到原生部分。
修改 正如@trashkalmar所建议的那样是解决方案:
static const char* const strClassName = "your/app/package/R$string";
clazz = env->FindClass(strClassName);
if (clazz == NULL) {
LOGE("Can't find class %s\n", strClassName);
return result;
}
jfieldID field = env->GetStaticFieldID(clazz , "you_string_resource", "I");
jint value = env->GetStaticIntField(clazz, field);
答案 0 :(得分:1)
访问您的R类并将其字段读取为任何其他类。