- Android入門基礎:從這裡開始
- Android分享操作
- Android多媒體
- Android圖像與動畫
- Android網絡連接與雲服務
- Android聯繫人與位置信息
- Android可穿戴應用
- Android TV應用
- Android企業級應用
- Android交互設計
- Android界面設計
- Android用戶輸入
- Android後臺任務
- Android性能優化
- Android安全與隱私
- Android測試程序
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
發送工作任務到IntentService
編寫:kesenhoo - 原文:http://developer.android.com/training/run-background-service/send-request.html
前一篇文章演示瞭如何創建一個IntentService類。這次會演示如何通過發送一個Intent來觸發IntentService執行任務。這個Intent可以傳遞一些數據給IntentService。我們可以在Activity或者Fragment的任何時間點發送這個Intent。
創建任務請求併發送到IntentService
為了創建一個任務請求併發送到IntentService。需要先創建一個顯式Intent,並將請求數據添加到intent中,然後通過調用 startService()
方法把任務請求數據發送到IntentService。
下面的是代碼示例:
- 創建一個新的顯式Intent用來啟動IntentService。
/*
* Creates a new Intent to start the RSSPullService
* IntentService. Passes a URI in the
* Intent's "data" field.
*/
mServiceIntent = new Intent(getActivity(), RSSPullService.class);
mServiceIntent.setData(Uri.parse(dataUrl));
- 執行
startService()
// Starts the IntentService
getActivity().startService(mServiceIntent);
注意可以在Activity或者Fragment的任何位置發送任務請求。例如,如果你先獲取用戶輸入,您可以從響應按鈕單擊或類似手勢的回調方法裡面發送任務請求。
一旦執行了startService(),IntentService在自己本身的onHandleIntent()
方法裡面開始執行這個任務,任務結束之後,會自動停止這個Service。
下一步是如何把工作任務的執行結果返回給發送任務的Activity或者Fragment。下節課會演示如何使用BroadcastReceiver來完成這個任務。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
![扫码二维码加入Web技术交流群](/public/img/jiaqun_03.jpg)
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论