Tôi mới trong android, tôi không biết nhiều về services.i có một lớp hoạt động với giao diện người dùng, tôi muốn làm cho lớp hoạt động này chạy ẩn, khi tôi nhấp vào nút quay lại. làm thế nào để làm cho hoạt động của tôi chạy trong nền như một dịch vụ, plz giúp tôi ..Làm cho hoạt động chạy ở chế độ nền
Trả lời
Nếu bạn chỉ muốn hoạt động của bạn chạy ở phía sau Hãy thử sử dụng
Movetasktoback(true);
ok. điều này đã làm việc cho tôi .. –
@ user2208695 bạn có thể vui lòng cho biết nơi để viết điều này –
Bạn nên đọc hướng dẫn phát triển trên Chủ đề: http://developer.android.com/guide/components/processes-and-threads.html
Cụ thể chức năng doInBackground() Ví dụ từ trang:
public void onClick(View v) {
new DownloadImageTask().execute("http://example.com/image.png");
}
private class DownloadImageTask extends AsyncTask<String, Void, Bitmap> {
/** The system calls this to perform work in a worker thread and
* delivers it the parameters given to AsyncTask.execute() */
protected Bitmap doInBackground(String... urls) {
return loadImageFromNetwork(urls[0]);
}
/** The system calls this to perform work in the UI thread and delivers
* the result from doInBackground() */
protected void onPostExecute(Bitmap result) {
mImageView.setImageBitmap(result);
}
}
tôi không muốn làm cho nó một chủ đề .. tôi chỉ muốn chạy này trong backgroung như một dịch vụ ... hoạt động của tôi bao gồm quản lý điện thoại, phát sóng vv reciever vì vậy không cần phải làm cho nó thành một chủ đề –
@Jesbin MJ Kiểm tra chỉnh sửa – RyPope
Bạn thực sự không thể chạy được Activity
trên nền! Khi một hoạt động không ở trên nền trước, nó sẽ được chuyển đến onStop
và sau đó hệ thống có thể chấm dứt nó, để giải phóng tài nguyên, theo phương pháp onDestroy
! thấy Activity Lifecycle
Để chạy trên nền bạn cần phải tạo ra một Service
hoặc IntentService
Thanh toán javadoc android về Dịch vụ here và here hoặc IntentService
và đây là một bên thứ ba Android Service Tutorial
Chỉnh sửa: bạn cũng có thể cần liên lạc giữa dịch vụ và hoạt động của mình để có thể vượt qua điều đó: Example: Communication between Activity and Service using Messaging
tôi đã trải qua điều này nhưng tôi đã không nhận được nó. làm thế nào để ràng buộc lớp hoạt động của tôi vào lớp dịch vụ –
xem thêm chỉnh sửa cuối cùng ... – madlymad
Dường như bạn muốn chạy một hoạt động ở chế độ nền khi thoát. Tuy nhiên, hoạt động không thể chạy trừ khi nó ở trên nền trước.
Để đạt được những gì bạn muốn, trong onPause(), bạn nên bắt đầu một dịch vụ để tiếp tục công việc đang hoạt động. onPause() sẽ được gọi khi bạn nhấp vào nút quay lại. Trong chế độ onPause, chỉ cần lưu trạng thái hiện tại và chuyển công việc sang dịch vụ. Dịch vụ sẽ chạy ở chế độ nền khi hoạt động của bạn không ở trên nền trước.
Khi bạn quay trở lại hoạt động của mình sau, hãy làm một điều gì đó trong onResume() để chuyển công việc của dịch vụ sang hoạt động của bạn một lần nữa.
- 1. Cách chạy hoạt động ở chế độ nền trong Android
- 2. Quá trình chạy ở chế độ nền trong Android
- 3. Chương trình Java chạy ở chế độ nền
- 4. giữ ứng dụng đang chạy ở chế độ nền
- 5. Ứng dụng đang chạy ở chế độ nền
- 6. Chạy trình nghe GPS ở chế độ nền trên Android
- 7. Chạy máy chủ Webrick ở chế độ nền?
- 8. chạy lệnh bash pipe ở chế độ nền với & ampersand
- 9. Rails + XMPP bot ở chế độ nền
- 10. iphone - NSTimers ở chế độ nền
- 11. Nền tùy chỉnh cho UINavigationBar ở chế độ ngang
- 12. "sửa chữa" hình nền động ở chế độ dọc
- 13. NSOperationQueue waitUntilAllOperationsAreFinished không hoạt động khi đang ở chế độ nền
- 14. Python/wxPython: Làm việc liên tục ở chế độ nền
- 15. Làm cách nào để chạy ứng dụng GPS của tôi ở chế độ nền?
- 16. Tại sao kích thước nền CSS: bìa không hoạt động ở chế độ dọc trên iOS?
- 17. AlarmManager không hoạt động ở chế độ ngủ
- 18. Có thể làm cho ứng dụng của tôi hoạt động ở chế độ an toàn không?
- 19. NSTimer dừng ở chế độ nền sau một thời gian
- 20. Giám sát Vùng iOS ở Chế độ Nền
- 21. Chế độ nền iOS
- 22. Jquery có hoạt động tốt ở chế độ quirks không?
- 23. Nhận thông báo với ứng dụng ở chế độ nền
- 24. Thực hiện tác vụ ở chế độ nền trong JavaFX
- 25. Bắt pid của một công việc được khởi chạy ở chế độ nền từ xa
- 26. Cuộn ở chế độ tạo cuộn nền trên Safari
- 27. Chạy RSpec ở chế độ gỡ lỗi
- 28. MPMoviePlayerController phát dòng âm thanh ở chế độ nền
- 29. Tiếp tục tải xuống ở chế độ nền
- 30. Làm thế nào để chạy RavenDb ở chế độ nhúng?
Launch một dịch vụ trong phương thức onPause(), ngăn chặn nó trong onResume(). Nếu bạn muốn biến một Hoạt động thành một dịch vụ, bạn nên sử dụng một dịch vụ. –
Sau đó viết một dịch vụ? –
@RaghavSood bạn có thể giải thích cách làm cho hoạt động của tôi thành một dịch vụ –