PDA

View Full Version : ری استارت کردن یا بستن برنامه از ظریق کدنویسی



sobhan1990
سه شنبه 18 شهریور 1393, 12:04 عصر
سلام
من برنامه ای دارم می نویسم که تو برنامم باید یک برنامه دیگه (غیر از برنامه خودم) رو ری استارت کنم. چطور میشه از طریق کدنویسی یک برنامه دیگه رو بست و دوباره اجرا کرد و یا ری استارت کرد؟

sobhan1990
سه شنبه 18 شهریور 1393, 15:37 عصر
24 بار بازدید شده ولی بی هیچ حوابی
یعنی کسی واقعا درراه حلی در این انجمن نمیدونه؟

samanmari
سه شنبه 18 شهریور 1393, 15:52 عصر
@sobhan1990
دوست من یه خورده صبر داشته باشید همیشه.


startActivity(getPackageManager().getLaunchIntentF orPackage("app package name").addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));

dasssnj
سه شنبه 18 شهریور 1393, 17:08 عصر
24 بار بازدید شده ولی بی هیچ حوابی
یعنی کسی واقعا درراه حلی در این انجمن نمیدونه؟

تا الان کلا 9 نفر از اعضای انجمن این تاپیکو دیدن . بقیه مهمان بودن یا تاپیکو چند بار دیدن.

saeed_g21
سه شنبه 18 شهریور 1393, 19:15 عصر
یک راهی که به ذهنم میرسه اول از طریق PakageName ش Kill کن بعد دوباره اجراش کن

این (http://barnamenevis.org/showthread.php?453294-%D8%AF%D8%B1%DB%8C%D8%A7%D9%81%D8%AA-PackageName-%D8%B3%D8%A7%DB%8C%D8%B1-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%87%D8%A7-%D8%A8%D8%A7-BrodcastReciver&p=2028133&viewfull=1#post2028133)تاپیک نیز فکر کنم کمکت میکنه

ghasemy14
چهارشنبه 19 شهریور 1393, 19:56 عصر
سلام
شما باید اول همه اکتیویتی ها رو ببندین و اکتیویتی اصلی رو دوباره اجرا کنید.
توی لینک زیر یک راه 3 خطی براتون هست من خودم تست کردم.
ریست کردن یا اجرای دوباره برنامه (http://www.blog.hami-r.com/post/23_%D8%B1%DB%8C%D8%B3%D8%AA_%DA%A9%D8%B1%D8%AF%D9% 86_%DB%8C%D8%A7_%D8%A7%D8%AC%D8%B1%D8%A7%DB%8C_%D8 %AF%D9%88%D8%A8%D8%A7%D8%B1%D9%87_%D8%A8%D8%B1%D9% 86%D8%A7%D9%85%D9%87/)

slr560
چهارشنبه 19 شهریور 1393, 20:18 عصر
سلام
شما باید اول همه اکتیویتی ها رو ببندین و اکتیویتی اصلی رو دوباره اجرا کنید.
توی لینک زیر یک راه 3 خطی براتون هست من خودم تست کردم.
ریست کردن یا اجرای دوباره برنامه (http://www.blog.hami-r.com/post/23_%D8%B1%DB%8C%D8%B3%D8%AA_%DA%A9%D8%B1%D8%AF%D9% 86_%DB%8C%D8%A7_%D8%A7%D8%AC%D8%B1%D8%A7%DB%8C_%D8 %AF%D9%88%D8%A8%D8%A7%D8%B1%D9%87_%D8%A8%D8%B1%D9% 86%D8%A7%D9%85%D9%87/)


به سوال دقت کنید. گفتن برنامه های دیگه رو چجوری میشه بست. شما اکتیویتی برنامه خودتون رو دارید تغییر میدید

و در جواب شروع کننده تاپیک باید بگم که راه حلش اینطوریه که شما لیست پروسه ها یا همون اکتیویتی های run شده برنامه رو بگیرید. همونایی که در backGround هستن
از طریق کد زیر: (البته چک نکردم درست هست یا نه)

final ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
final List<RunningTaskInfo> recentTasks = activityManager.getRunningTasks(Integer.MAX_VALUE) ;


for (int i = 0; i < recentTasks.size(); i++)
{
Log.d("Executed app", "Application executed : " +recentTasks.get(i).baseActivity.toShortString()+ "\t\t ID: "+recentTasks.get(i).id+"");
}

و بعدش بیای با توجه به position لیست هر برنامه ای رو که خواستی ببندی
حالا این که چجوری ببندی برنامه های دیگه رو اطلاع ندارم. نمیدنم فکر کنم اجازه ی root بخواد
بازم میگم من کد بالارو تست نکردم. یکی از برنامه نویس های stack اینو گزاشته بود