問題タブ [activity-manager]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
7 に答える
23109 参照

android - Android Lollipop 5.0 のみでフォアグラウンド アクティビティ名を取得できない

次のコードを使用して、変数foregroundTaskPackageNameでフォアグラウンド アプリのアクティビティ名を取得します。4.1 から 4.4 までのすべての OS バージョンで動作しますが、Android 5.0 Lollipop では動作しません。

5.0 Lollipop の変更点について誰か助けてもらえますか? Lollipop では、foregroundTaskPackageNameのテキストは「Launcher3」です。Genymotion エミュレーターを使用しています。

0 投票する
1 に答える
169 参照

android - Activity.java から ActivityManagerServices へのトレース

プロセス フローを理解するために、Activity クラスから registerReceiver() をトレースしようとしています。

呼び出しは ActivityManagerService.registerReceiver() で終わると思います。

私の理解では、ActivityManagerService は SystemService に存在するため、SystemService へのリクエストが必要になるはずです。問題は、Activity.java から ActivityManagerService へのコード実行フローを追跡できないことです。

developer.android.com から:

上記のすべてのクラスを調べて registerReceiver() の実装を追跡しましたが、ActivityManagerService の systemservice を要求するコードを見つけることができません。

ActivityManagerService がどのようにトリガーされるかを誰かが説明してくれることを願っています。

ありがとうございました。

0 投票する
1 に答える
718 参照

android - アプリから他のアプリのようなチャットヘッドをプログラムで殺す方法は?

他のアプリケーションへのアクセスを管理するアプリケーションを作成しています。ユーザーは、デバイスでブロックするアプリを決定できます。誰かがブロックされたアプリを開始すると、ブロックについて通知する画面が表示されます。現在開いているアクティビティがブロックされているかどうかを確認する独自のランチャーとバックグラウンド プロセスがあります。トップ アクティビティを確認するには、ActivityManager getRunningTasks(); のパッケージ名とクラス名を使用します。このアプリがブロックされている場合は、WindowManager に追加して独自のビューでカバーします。これは、facebook のチャット ヘッドや LG が提供するマルチタスキングのような WindowManager を使用するアプリ (QSLIDE) を除いて、すべてのアプリで機能します。このアプリケーションは一番上にありません。もちろん、getRunningAppProcesses を使用して彼女のプロセスを見つけることはできますが、それを強制終了することはできません。Android.os.Process.killprocess も機能しません。私はこれが良い考えではないことを知っていますが、私は他のものを持っていません.

一部のアプリが WindowManager に何かを追加したことを認識し、最終的にそれをブロックする可能性はありますか? または、ビューを削除するか、アプリを強制終了しますか?

0 投票する
1 に答える
5759 参照

android - プロセス名はAndroidのパッケージ名と同じですか?

プロセスとは、私たちが提供するものを意味しandroid:process、パッケージとは、パッケージを意味します

詳細プロセスとスレッド - Android デベロッパー

実行中のすべてのアプリのアプリケーション名を取得したかったのです。これは、さまざまな情報源を調べた後に私が行ったことです(そしてそれは機能します)。

PackageManager.getApplicationInfo のドキュメントが表示される場合

しかし、私は通ります

ここで、processName は実行中のプロセスの名前です。したがって、基本的にプロセス名をパッケージ名として使用してアプリケーション情報を取得しています。

  1. まず、このアプローチは正しいですか?
  2. 第二に、アクティビティ/サービスなどのプロセスを提供しない場合、新しいプロセスがパッケージ名と同じ名前で作成されるというのは本当ですか?
0 投票する
0 に答える
587 参照

android - BitmojiはどのようにAndroidでwhatsappのアクティベーションを検出しますか

Androidでアプリケーションの起動を検出するには、基本的に2つの方法があることを読みました。

1) フォアグラウンド アクティビティのアクティビティ マネージャーをポーリングする (スタックの一番上)

2)ログをポーリングします-セキュリティ上の問題により、READ_LOG権限がより高いレベルのデュオに移動されたため、新しいAndroidバージョンではそれを行うことができなくなったことを読みましたが

現在、両方の方法が数ミリ秒ごとのポーリングを中心に展開しています。これは、バッテリー寿命を大幅に浪費しているように思えます。

それでも、そのような機能を表示するアプリをいくつか見ました.1つの例はビットモジです-これはwhatsappのバイバーなどを検出します.

私が知りたいのは:

上記の方法を使用していますか?

これがバッテリーを消耗させると仮定するのは間違っていますか、それとも私が思っているほど大きくはありませんか?

0 投票する
2 に答える
11545 参照

android - Android:IntentServiceが実行されているかどうかを判断するには?

Intent サービスを呼び出しているアップロードのアクティビティがあります。そこでは、API リクエストの呼び出しを処理しています。

アップロード タグを表示するために、サービスが実行されているかどうかをアクティビティに知らせたい。

サービスが実行されているかどうかを判断するために、次のことを試しました。

しかし、Activity Manager Running Service Info では、実行しているインテント サービスのクラスを取得していないため、これは常に誤りです。

API 呼び出しの応答に Broadcast を使用しました。

私もこのコードをチェックしました。

ただし、このコードでは、サービスをチェックすると、サービスが再度開始されるため、サービスが 2 回呼び出されます。

これで私を助けてください。

0 投票する
1 に答える
4249 参照

android - 別のアプリが実行されているかどうかを検出する

Android で別のアプリが実行されているかどうかを検出することは可能ですか? マップ アプリケーション (Waze や Google マップなど) の実行中に、アプリで何らかのアクションをトリガーする必要があります。

0 投票する
0 に答える
394 参照

android - アプリケーションから ActivityManagerService メソッドを呼び出す

ルート化されたデバイスでシステム アプリケーションを作成しましたが、疑問に思っていました:ActivityManagerServiceそのアプリケーションからメソッドにアクセスする方法はありますか?

ActivityManagerオブジェクトを使用してみましたが、すべてのメソッドが にも存在するわけではありませんActivityManagerService

ありがとう!