アクティビティが作成または実行されていないネイティブ コンポーネントがあります。Android は便利な機能のほとんどを Java で備えているため、Java を使用する以外に ANDROID_ID を取得する方法はありません。ネイティブでそれを行うための概念実証コードをセットアップしましたが、機能します。しかし、そのためにインスタンス jobject と、もちろん JNIEnv があります。Javaインスタンスをネイティブコードに渡す必要がないように、どうにかして設定したいと思います。つまり、どういうわけか Context オブジェクトを作成/取得する必要があります。その後、ContentResolver を取得して ANDROID_ID を取得できます。ANDROID_ID は一定で、ContentResolver もすべてのアクティビティで同じように見えるので、何らかの方法があるに違いないと思います。また、Context はすべて同じだと思いますが、確かな知識はありません。ネイティブコードはできますが、Androidアプリのインフラはあまり知らないので、
私の考え:
ネイティブ コードでいくつかの pseudoActivity を作成し、ID を取得した後、一時的にそれを強制終了します。
Java jobject インスタンスを渡し、コンテキストを取得します。(動作しますが、望んでいません。)