是否可以从本机代码广播Intent?如果是,是否有与相关API相关的文档和/或示例代码?
是否可以从本机代码广播Intent?如果是,是否有与相关API相关的文档和/或示例代码?
您需要通过调用Java API函数来调用它 - 没有用于意图的JNI接口。
首先查看课程 Intent
,然后查找构建意图和广播它们的方法,然后调用它们。
编辑:这是一个 残缺 例。 jniEnv
被传递到你所有的JNI函数中。
jclass activityClass = jniEnv->FindClass("android/app/Activity");
jmethodID startAcitivtyMethod = jniEnv->GetMethodID(activityClass , "startActivity", "(Landroid/content/Intent;)V");
jniEnv->CallVoidMethod(yourActivityObject, startAcitivityMethod, yourIntentObject);
您需要通过调用Java API函数来调用它 - 没有用于意图的JNI接口。
首先查看课程 Intent
,然后查找构建意图和广播它们的方法,然后调用它们。
编辑:这是一个 残缺 例。 jniEnv
被传递到你所有的JNI函数中。
jclass activityClass = jniEnv->FindClass("android/app/Activity");
jmethodID startAcitivtyMethod = jniEnv->GetMethodID(activityClass , "startActivity", "(Landroid/content/Intent;)V");
jniEnv->CallVoidMethod(yourActivityObject, startAcitivityMethod, yourIntentObject);
我认为从本机代码广播消息并不复杂,但只有在从Android Java应用程序调用本机函数的情况下才能传递Context。据我所知,纯粹的原生应用程序没有Context这样的东西,因此你不能广播一个意图。
即使是纯本机应用程序也可以广播Intent。这意味着,即使本机活动是发射器,我们仍然可以广播Intents。