在中间件 C 库中完成一些工作后,需要向通知栏显示一些通知。请建议是否有任何解决方法来显示通知。这个 C 库没有 GUI 部分。
问问题
912 次
2 回答
1
正如 Nitrex 所说,您需要通过 JNI 在 Java 类中调用该方法:
在 C 中:
void
Java_com_example_hellojni_HelloJni_doSomeInterestingJob( JNIEnv* env,
jobject thiz )
{
jclass cls = (*env)->GetObjectClass(env, thiz);
jmethodID mid = (*env)->GetMethodID(env, cls, "callback", "()V");
if (mid == 0)
return;
(*env)->CallVoidMethod(env, thiz, mid);
}
在你的“HelloJni”(请找一个更好的名字;-))类中,你可以调用:
public void callback() {
Log.d(TAG, "...");
// Start notifications now.
}
于 2011-02-08T08:13:19.627 回答
0
您将不得不使用 Java 本机接口代码 (JNI) 从 C 代码中调用 java 方法。在线阅读 JNI,了解如何做到这一点。然后在java中,您可以将通知添加到通知栏。如果您不知道调用 java 方法,请在此处发表评论或在其上发布新问题。
于 2011-02-08T04:02:41.013 回答