簡體   English   中英

在應用程序中的任何地方顯示警報對話框

[英]Display alert dialog wherever in application

基本上我正在使用android應用,下面是我面臨的問題。

  1. 我必須向用戶顯示最新版本的通知可用性
  2. 我能夠處理所有這些信息,這意味着找到最新版本並檢查當前安裝的版本。
  3. 我發現安裝的版本過舊后,我需要在用戶使用應用程序時顯示警告,提示“請升級到最新版本”
  4. 我實現了在啟動應用程序時顯示警報的功能,但是它給用戶帶來了奇怪的感覺,因為如果成功繼續繼續不顯示更新警報,它將不斷要求更新最新版本。

我想通過在后台進行更新檢查調用,然后顯示警報對話框來使用戶繼續使用應用程序。

當我嘗試時,警報要求上下文(活動)顯示在窗口上,當使用應用程序i的用戶可能不知道他在哪個上下文(活動)中時。

你能指導我如何做到這一點嗎?

提前致謝

我不確定我是否理解正確,但是...您是否嘗試過在單獨的線程中在后台進行版本檢查?

AsyncTask為例。 這樣,可以在用戶繼續使用應用程序時繼續進行檢查,並且如果有可用的新版本,則AsyncTask可以“從后台”調用AlertDialog。

您必須實現顯示對話框方法。 如果您想在后台(即在服務中)檢查某些內容並向用戶顯示某些內容,則還可以使用android的LocalBroadcastManager來在應用程序中傳遞數據和事件。 但是您仍然必須在應用程序中的每個活動中都包含一些代碼。 此代碼必須包含以下部分:

顯示對話框的方法:

public void showNeedUpdateDialog(){...}

onReusme()onPause()您必須注冊/取消注冊BroadcastReceiver

1-您可以創建上下文的靜態實例,並在移動的每個活動上對其進行設置...因此,每當需要顯示警報對話框時,您都可以知道當前活動。 這有點棘手...

2-您可以創建一個服務來檢查您的應用程序的版本是否舊,然后您可以在此處檢查如何從服務顯示警報對話框...我認為這是您應該采取的方法...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM