-1

我想在它打开时杀死短信应用程序。为此,我编写了一项服务。检查是否打开了短信应用程序。如果是,那么它会杀死它。我正在使用ActivityManager类。这是我的代码,但是当我启动短信应用程序时,它永远不会结束。为什么?可能吗 ?如果是,请提供帮助。

package com.example.activitymanager;

import java.util.List;

import android.app.ActivityManager;
import android.app.IntentService;
import android.content.Intent;
import android.os.Handler;
import android.util.Log;

public class Servicee extends IntentService {
    ActivityManager am;
    Handler handler = new Handler();
    Runnable r = new Runnable() {

        @Override
        public void run() {
            List<ActivityManager.RunningTaskInfo> list = am
                    .getRunningTasks(Integer.MAX_VALUE);
            for (ActivityManager.RunningTaskInfo task : list) {
                if (task.baseActivity.getPackageName()
                        .equals("com.android.mms")) {
                    am.restartPackage(task.baseActivity.getPackageName());
                }
            }
            handler.postDelayed(this, 5000);
        }
    };

    public Servicee() {
        super("");
    }

    @Override
    protected void onHandleIntent(Intent arg0) {
        am = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
        handler.postDelayed(r, 2000);

    }

}
4

1 回答 1

0

我同意 Usman Riaz 的评论,但请记住,进程 ID 可能会因设备而异。我想监控特定应用程序的 tpc 流量,但 id 最终没有成功。您将杀死其他一些应用程序或使系统崩溃。

于 2013-04-14T17:11:24.877 回答