アンドロイドのカスタムキーボードを開発しています。キーボードのハングアウトなどで友達にスティッキーを送信したいと思います。私はこのためにいくつかのpngを追加しました。アンドロイドで開かれているアプリを検出する方法
私はアンドロイドの共有APIを使用すると、まず共有するアプリを選択する必要があります。キーボードから現在開いているアプリケーションを検出することは可能ですか?たとえば、ハングアウトでチャットしている場合は、「com.something.hangouts」と共有するようにインテントを呼び出すことができます。
FBメッセンジャーで「com.something.facebook.messenger」などと言えばこれは、ランチャーやキーボードをバック与える...
fun getOpenedApplication() {
var am = this.getSystemService(ACTIVITY_SERVICE) as ActivityManager;
var l = am.getRecentTasks(1,
ActivityManager.RECENT_WITH_EXCLUDED);
var i = l.iterator();
var pm = this.packageManager;
while (i.hasNext()) {
try {
var intent = i.next().baseIntent;
var list = pm.queryIntentActivities(intent,
PackageManager.MATCH_DEFAULT_ONLY);
var c = pm.getApplicationLabel(pm.getApplicationInfo(
list[0].activityInfo.packageName,
PackageManager.GET_META_DATA));
Toast.makeText(this, "Application name: " + c.toString(),
Toast.LENGTH_LONG).show();
} catch (e: Exception) {
Toast.makeText(this,
"Application name not found: " + e.toString(),
Toast.LENGTH_LONG).show();
}
}
}
しかし、それはうまく機能していない:...
私はこのようにそれを取得しようとしました。
(ランダムに)私は、最近使ったアプリのリストから最初のアプリを取得しようとしましたが、それは上記のAndroid Lと、使用のために
ありがとう、これは解決策でした! – MegaX
すばらしい。これを得るには、SOの多くのスレッドを通過しなければならなかった。名声! – Shahar
ありがとう、あなたの側からの素晴らしい助け。 – Janak