最前面にあるJavaアプリの特定方法

402 views
Skip to first unread message

dragon

unread,
Mar 31, 2009, 12:18:00 PM3/31/09
to Android-SDK-Japan
はじめまして。
Android初心者です。

Androidについて勉強不足ではありますが、
下記について、どなたがご教授いただけないでしょうか?

JavaアプリからJNIを介して、Nativeの共有ライブラリをコールした場合に、
コール元のJavaアプリを識別したいと思っております。

そこで、複数のJavaアプリが起動されている状態で、
最前面にあるJavaアプリを、Nativeの共有ライブラリ側から特定する方法はあるのでしょうか?

Androidでは、アクティブなJavaアプリは最前面にあるということですから、
最前面のJavaアプリが特定できれば、今回の私のやりたいことが実現できるのではと思っております。

ご教授よろしくお願いいたします。

Kunio Murasawa

unread,
Apr 1, 2009, 12:17:30 PM4/1/09
to android-...@googlegroups.com
村沢です

2009/04/01 1:18 dragon <drago...@gmail.com>:

JavaアプリからJNIを介して、Nativeの共有ライブラリをコールした場合に、
コール元のJavaアプリを識別したいと思っております。

native経由で自分のプロセスIDを getpid() で取得し
 
そこで、複数のJavaアプリが起動されている状態で、
最前面にあるJavaアプリを、Nativeの共有ライブラリ側から特定する方法はあるのでしょうか?
 
Activity の状態変化時(onResume()とか)にプロセスIDを
記録しておいてはどうでしょうか

--
Kunio Murasawa / Gmail

Makoto Anjo

unread,
Apr 1, 2009, 1:52:18 PM4/1/09
to Android-SDK-Japan
安生です。

dragonさんこんにちは。
さて、そもそもNative自体が今のところGoogleとしてもサポートしているわけではありません。
使うことができる状態ではありますが、まだ整備段階で、今後も変化がある部分です。ドキュメントも全くありません。

それを踏まえた上でですが、パッケージをまたがってのライブラリの共有は、現時点ではできません。
したがって、Nativeの共有ライブラリというものがそもそもできません。もちろん、同一apk内でしたら可能ですが。

とはいえ、いずれはJNIも正式にサポートすることになる予定ではあるようです。ただ、共有が可能になるかどうかまでは
決まっていないとのことです。
Reply all
Reply to author
Forward
0 new messages