わかりました、私は困惑しています:-(
実験として、Activity を開始してから、後で ActivityManager パッケージの killBackgroundProcesses を使用してシャットダウンしようとしました。エラーは発生しません。何もしないようです。
以下のコードは、取得できる範囲で絞り込まれています。テストとして、Activity を (正常に) 開始し、onPause メソッドが呼び出されたら、開始したばかりのものを停止しようとします (実際のコードでは、これはかなり後で発生します)。
これを入力すると、現在画面に表示されているアクティビティで killBackgroundProcesses を使用しても意味がない可能性があることがわかりました。もしそうなら、このアクティビティを停止する他の方法はありますか? 私はこの他のアプリのソースを持っていません。私はそれを起動しましたが、今はそれを消したいと思っています。また、これは通常のアクティビティ ライフサイクルの動作ではないことも認識していますが、少なくとも今のところ、これは私にとって特別なケースです。
洞察や解決策をいただければ幸いです。
ありがとう!
マニフェスト:
...
<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"/>
...
コード:
public class MainActivity extends Activity
{
static String PACKAGE = "com.abc.def";
...
Intent i = getPackageManager().getLaunchIntentForPackage( PACKAGE );
startActivity( i );
...
@Override
protected void onPause()
{
// just to see if we can, kill the activity we just started
ActivityManager manager = (ActivityManager)getApplicationContext().getSystemService( Context.ACTIVITY_SERVICE );
manager.killBackgroundProcesses( PACKAGE );
}
}