0

アプリケーションをフォアグラウンドに配置する方法は知っていますが、ここではアプリケーションをバックグラウンドに配置します。つまり、私が望む各アプリケーション。私はグーグルでたくさん検索しましたが、解決策が見つかりませんでした。方法はわかりますか?家を表示しようとしましたが、うまくいきません:

Intent i = new Intent(Intent.ACTION_MAIN);
i.addCategory(Intent.CATEGORY_HOME);
startActivity(i);

事前にどうもありがとうございました。

ここに私のすべてのコード(テストコード)があります。私はマップアプリを起動し、直後にそれをバックグラウンドに入れたいです:

    List<ResolveInfo> pkgAppsList =  retreivedAllApplicationsInstalled();      

    ActivityManager actMngr = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
    List<RunningAppProcessInfo> runningAppProcesses = actMngr.getRunningAppProcesses();
    for (RunningAppProcessInfo pi : runningAppProcesses) {

        String[] testPklist = pi.pkgList;

        if(pi.importance == RunningAppProcessInfo.IMPORTANCE_BACKGROUND){
            for(String tp : testPklist){
                if(tp.equals("com.google.android.apps.maps")){

                       //launch map application
                       Intent i = new Intent(Intent.ACTION_MAIN);
                       PackageManager manager = getPackageManager();
                       i = manager.getLaunchIntentForPackage("com.google.android.apps.maps");
                       i.addCategory(Intent.CATEGORY_LAUNCHER);
                       startActivity(i);

                }
            }

        }

    }
    //try to put back all applications on displaying home
    Intent back = new Intent(Intent.ACTION_MAIN);
    back.addCategory(Intent.CATEGORY_HOME);
    startActivity(back);
4

2 に答える 2

1

アプリをバックグラウンドで実行したい場合は、Serviceと呼ばれるものを使用する必要があります。詳細については、リンクを参照してください。ただし、バックグラウンド プロセスはバッテリーを消耗するので、注意して使用してください。

それが役立つことを願っています。

于 2012-07-27T00:33:12.570 に答える
0

私は自分のコードの問題を理解していると思います:私はアクティビティ「マップ」を実行します。これは実行され、以下のコード(バックグラウンドに置くため)は決して起動されません........

于 2012-07-27T01:18:43.083 に答える