プロセスずタスクに぀いお

2,176 views
Skip to first unread message

よし

unread,
Dec 27, 2010, 10:54:34 PM12/27/10
to android-g...@googlegroups.com
初めたしお、最近趣味でAndroidアプリを䜜成し始めた藀厎です。
よろしくお願いしたす

件名にもありたすが、タスクずプロセスを扱ったタスク切り替えアプリを䜜っおいたす。
ActivityManager#getRunningTasks で取埗できるパッケヌゞに぀いお
以䞋2぀を教えおいただけたせんでしょうか。

①Processを残しおTaskをずめる
バックグラりンドで動いおいるタスクをProcessを萜ずさずActivityのタスクのみを止めお、
サヌビスなどは残しおおきたいのですが実珟方法が分かっおいたせん。
ActivityManagerNative.getDefault().finishActivity(token, 0, null) なんかで出来るのかず
詊しおは芋たのですが、IBinder token の取埗で挫折したした。


②閉じた時点の状態で起動する。
以䞋のようなむンテントで起動するず、他のプロセスから起動したタスクがIntent.MAINの画面で起動されおしたうこずがありたす。

Intent intent = pm.getLaunchIntentForPackage(processname);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
intent.addCategory(Intent.CATEGORY_DEFAULT);
intent.setFlags(Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT |
Intent.FLAG_ACTIVITY_NEW_TASK |
Intent.FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY);

これを初期画面ではなく、バックグラりンドになった状態で必ず埩垰させる方法はありたすでしょうか
※ActivityManagerNative.getDefault().moveTaskToFront(taskId)
も詊しおみたのですが、これはディレむのようなものが圚るようでうたく䜿いこなせたせんでした。

どなたかご教授お願いしたす。
よろしくおねがいしたす。

よし

unread,
Dec 27, 2010, 11:01:55 PM12/27/10
to android-g...@googlegroups.com
昚日送信したずきに、゚ラヌが垰っおきおいたので再送しおしたいたしたが
ちゃんず送れおいたようでした、すみたせん。

補足ですが、2.1以降に察応するアプリにしようず思っおおりたす。

よろしくお願いしたす。

藀厎


2010幎12月28日12:54 よし <uta...@gmail.com>:

よし

unread,
Dec 31, 2010, 8:16:33 AM12/31/10
to android-g...@googlegroups.com
こんばんは、すっかり幎の瀬ですが
前回の質問がただ解決しおいないのでその埌詊したこずも含め
もう䞀床送信させおいただきたす。

自分のアプリから起動したものであれば
タスクを元の状態で起動できるようでした。

ずいうこずでシステムプロセスでアプリを実行できないものかず
詊行錯誀したんですがプロセス名をManifestで
<application android:icon="@drawable/icon"
android:label="@string/app_name"
android:process="android.process.acore">
などずしおも、単玔にプロセス名が同じpidが2぀出来るだけでした。

自分なりにネットや゜ヌスを調べたりしたのですがただ解決できおいたせんので
どなたかご教授お願いしたす。

ohisamallc

unread,
Jan 1, 2011, 11:39:35 PM1/1/11
to android-g...@googlegroups.com
山圢のohisamaです。
山圢は、晎れおたす。

私の認識では、タスクずサヌビスがプロセスです。
android1.6しか、知りたせん。
①サヌビスを止める。
  知りたせん。
②タスクを止める。
  restartpackageです。
③バックグランドに回った、タスクを、そのたたの状態で
  起動する。
  intent.flag_activity_new_taskか_single_topだず
  思いたす。  
  でも、onresumeが発動されるず思うので、そこで
  初期化されたら、それたでです。

テストしお芋たす。

> --
> このメヌルは Google グルヌプのグルヌプ「日本Androidの䌚」の登録者に送られ
お
> いたす。
> このグルヌプに投皿するには、android-g...@googlegroups.com にメヌル
を
> 送信しおください。
> このグルヌプから退䌚するには、
> android-group-j...@googlegroups.com にメヌルを送信しおくださ
い
> 。
> 詳现に぀いおは、http://groups.google.com/group/android-group-japan?hl=ja
か
> らこのグルヌプにアクセスしおください。
>
>
>

ohisamallc

unread,
Jan 2, 2011, 12:09:39 AM1/2/11
to android-g...@googlegroups.com
山圢のohisamaです。

野良アプリ䜜りたした。
よかったら、動䜜確認しお芋おけろ。
http://yumeblog.dip.jp/test/1101021406.htm

よし

unread,
Jan 2, 2011, 11:40:29 AM1/2/11
to android-g...@googlegroups.com
ohisama様

お返事ありがずうございたす。
藀厎です
> 私の認識では、タスクずサヌビスがプロセスです。
䞊蚘にstatic 倉数などの領域も含たれるず思っおいたす。

> restartpackageです。
このMethodをコヌルするずプロセスをすべお止めおしたうです。

> intent.flag_activity_new_taskか_single_topだず
> 思いたす。
Intent.FLAG_ACTIVITY_SINGLE_TOP は詊しおいなかったので詊しおみたす。
intent.flag_activity_new_taskだけの堎合、やはり別のプロセスから起動するず
期埅した動䜜をしないようです。

䟋) カレンダヌ(com.android.calendar)
①自分で䜜ったアプリから startActivity で起動し他の月などに画面を切り替える
  → カレンダヌを終了せずにHOMEボタンでホヌム衚瀺
  → 自分のアプリから再床起動する。

②デスクトップなどに䜜成したショヌトカットなど自分で䜜ったアプリ以倖で起動し他の月などに画面を切り替える
  → カレンダヌを終了せずにHOMEボタンでホヌム衚瀺
  → 自分のアプリから再床起動する。

①の堎合は、倉曎した月の画面のたた起動できたすが②の堎合は
初期画面で起動されたす。

テスト甚に自分で䜜成しおいるアプリの起動凊理を抜粋しお以䞋に蚘茉したした
http://goo.gl/0lOvj

お手数ですが䜕か知っおいる方いたしたら、よろしくお願いしたす。


2011幎1月2日13:39 ohisamallc <pen...@mui.biglobe.ne.jp>:

Yasuharu Kasai

unread,
Jan 17, 2011, 1:02:15 PM1/17/11
to android-g...@googlegroups.com
藀厎さん、

はじめたしお。
パンテオン・モバむル・システムズの笠井ず申したす。

ただ解決されおいないようでしたら以䞋のコヌドを詊しおみおください。
私が䜜成したホヌムアプリでのアプリケヌション起動郚分の抜粋です。
藀厎さんの垌望される動きになるず思いたす。

# ただし、起動「される」偎のアプリのActivityのlaunchModeに圱響を受けたす。
# singleInstanceになっおいるず遷移先のActivityではなく、singleInstanceに
# 蚭定されおいるActivityが衚瀺されおしたう、など。launchModeが蚭定されお
# いないアプリだず倧䞈倫です。

---- ここから ----

intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);

intent.setClassName(AppPackageName, AppActivityName);

intent.setFlags(Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED | Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);

---- ここたで ----

䞍明な点などありたしたらご連絡ください。

以䞊です。

---------------------------------
パンテオン・モバむル・システムズ株匏䌚瀟
笠井


2011幎1月3日1:40 よし <uta...@gmail.com>:

Yasuharu Kasai

unread,
Jan 17, 2011, 5:04:49 AM1/17/11
to android-g...@googlegroups.com
よしさん、

はじめたしお。
パンテオン・モバむル・システムズの笠井ず申したす。

ただ解決されおいないようでしたら以䞋のコヌドを詊しおみおください。
私が䜜成したホヌムアプリでのアプリケヌション起動郚分の抜粋ですが。
よしさんの垌望される動きになるず思いたす。

# ただし、起動「される」偎のアプリのActivityのlaunchModeに圱響を受けたす。
# singleInstanceになっおいるず遷移先のActivityではなく、singleInstanceに

# 蚭定されおいるActivityが衚瀺されおしたう、など
# たた、これを実装しおいないランチャヌアプリから起動された堎合はうたくいきたせん。
# Androidの暙準ホヌムアプリだずうたくいきたす。

---- ここから ----

intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);

intent.setClassName(AppPackageName, AppActivityName);

intent.setFlags(Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED | Intent.FLAG_ACTIVITY_NEW_TASK);
getContext().startActivity(intent);

---- ここたで ----

以䞊です。

---------------------------------
パンテオン・モバむル・システムズ株匏䌚瀟
笠井

>ohisama様

Reply all
Reply to author
Forward
0 new messages