2012-06-05 40 views
7

Tôi đang cố gắng khởi động lại ứng dụng khi xảy ra sự cố trong Android bằng cách sử dụng Thread.UncaughtExceptionHandler. Tôi có thể khởi động lại ứng dụng với chồng hoạt động hiện tại như một quy trình mới không ?? Nếu có, tôi có thể làm như thế nào?Android Khởi động lại ứng dụng

Trả lời

1

Một phương pháp là ghi đè phương thức onPause trong hoạt động để xóa ứng dụng. Như thế này:

public class MyActivity extends Activity { 
    @Override 
    public void onPause() { 
     finish(); 
    } 
+0

Đoạn mã trên kết thúc nghi thức hoạt động tương ứng? Tôi đã sử dụng đoạn mã sau để giết quá trình android.os.Process.killProcess (android.os.Process.myPid()); – PgmFreek

+0

Ah vì vậy bạn đang cố gắng để giết quá trình và khởi động lại ứng dụng ngay sau khi quá trình này bị giết? –

+0

có ... Sau khi giết chết quá trình tôi đã sử dụng trình quản lý báo thức để khởi động ứng dụng ... Nhưng câu hỏi của tôi là tôi có thể bắt đầu ứng dụng với chồng hoạt động của quá trình trước không? – PgmFreek

0

Theo như tôi biết, khi bạn giết quá trình của bạn, các bộ thu rác sẽ chạy, và tất cả các đối tượng mà thuộc về ứng dụng của bạn, mà tiêu thụ bộ nhớ sẽ được giải thoát, đó là tất cả đối tượng sẽ có giá trị null. Vì vậy, bắt đầu ứng dụng với quá trình trước đó 'theo dõi stack hoạt động là không thể.

+0

Tôi có thể nhận được chồng hoạt động của quy trình hiện tại trước khi giết nó không? – PgmFreek

+1

Vui lòng xem liên kết này, nó có thể giúp bạn: http://stackoverflow.com/questions/10043246/retrieving-the-navigation-history-for-the-current-running-application – Shrikant

Các vấn đề liên quan