0

ミドルウェア C ライブラリでいくつかの作業が完了した後、通知バーにいくつかの通知を表示する必要があります。通知を表示するための回避策があれば提案してください。この C ライブラリには GUI 部分がありません。

4

2 に答える 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 Native Interface コード (JNI) を使用して、C コードから Java メソッドを呼び出す必要があります。これを行う方法については、JNI オンラインを参照してください。次に、Java で、通知を通知バーに追加できます。Java メソッドの呼び出しがわからない場合は、ここにコメントするか、新しい質問を投稿してください。

于 2011-02-08T04:02:41.013 に答える