Biz android:process
içinde sağladıklarının demek ve paket tarafından ben çalışan tüm uygulamaların uygulama adlarını almak istedimİşlem adı android paket adıyla aynı mıdır? Bu yöntem ile
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.osg.appkiller"
android:versionCode="1"
android:versionName="1.0" >
Daha detay Processes and Threads - Android Developer
paketi anlamına gelir. Yani çeşitli kaynaklara baktıktan sonra yaptım (ve işe yarıyor).
ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
PackageManager packageManager = getPackageManager();
final List<RunningAppProcessInfo> runningProcesses = activityManager.getRunningAppProcesses();
for(RunningAppProcessInfo processInfo : runningProcesses) {
CharSequence appName = null;
try {
appName = packageManager.getApplicationLabel(packageManager.getApplicationInfo(processInfo.processName, PackageManager.GET_META_DATA));
} catch (NameNotFoundException e) {
Log.e(TAG,"Application info not found for process : " + processInfo.processName,e);
}
}
Eğer
ApplicationInfo android.content.pm.PackageManager.getApplicationInfo(String packageName, int flags) throws NameNotFoundException
PackageManager.getApplicationInfo
Belgelerine bakın ama ProcessName süreç çalışan adıdır BenprocessInfo.processName
geçirerek edin. Bu yüzden uygulama bilgilerini almak için temel olarak paket adı olarak işlem adını kullanıyoruz.
- Her şeyden önce bu yaklaşım doğru mu?
- İkincisi, faaliyetler/hizmetler vb. Için süreç sağlamazsak, paket adıyla aynı isimle yeni süreç oluşturulduğu doğru mu?