2014-03-12 34 views
0

基本上我在android應用程序上工作,我正面臨的問題如下所述。無論在應用程序中的任何地方顯示警報對話框

  1. 我有顯示最新版本的通知,可用性,用戶
  2. 我可以能夠處理所有這些信息意味着找到最新版本,並檢查當前安裝的版本。
  3. 當我發現安裝版本是舊的,我需要顯示警報說,'請升級到最新版本',而用戶使用應用程序
  4. 我實現顯示警報在啓動應用程序時,但它創建奇怪的用戶因爲如果成功繼續不顯示更新警報,它會一直要求最新版本更新。

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

當我嘗試,警報需要上下文(活動)來顯示窗口,當用戶使用應用程序我可能不知道他在哪裏上下文(活動)。

可以請你指導我如何實現這一目標。

在此先感謝

回答

0

1您可以創建上下文的靜態實例,並設置它在你移動的每一個活動上......所以,只要你需要顯示警報對話,你就可以知道當前活動。這是一個有點棘手的方式...

2-你可以創建一個服務來檢查你的應用程序的版本是否舊,那麼你可以檢查如何顯示從服務here警報對話框......我認爲這是你應該去的方式,雖然...

+0

謝謝,像預期的工作... – user3173888

+0

很高興我可以幫忙;) – yahya

0

我不知道如果我的理解沒錯,但是...你嘗試過做版本檢查的背景下,在一個單獨的線程?例如

AsyncTask。這種方式可以在用戶繼續使用應用程序時進行檢查,並且如果有新版本可用,AsyncTask可以從後臺調用AlertDialog。

0

你必須實現顯示對話方法。如果你想檢查背景(即在一個服務)的東西,並顯示給用戶的東西,你也可以使用android的LocalBroadcastManager在應用程序中傳遞數據和事件。但是,您仍然需要在應用程序中的每個Activity中都有一些代碼。此代碼必須包含以下幾個部分:

方法顯示對話框:在onReusme()

public void showNeedUpdateDialog(){...} 

onPause()你必須註冊/註銷BroadcastReceiver

相關問題