我在一個有幾個開發人員的項目上工作。 我們在一個相當大的應用程序上工作。 每個開發人員都有幾項活動可以看作整個主應用程序的子應用程序。有沒有辦法創建一個控制我的應用程序的幾個活動的控制實例?
我明白,這可能不是最好的設計,但它存在,我們必須以某種方式處理它。
現在的主要問題是,我們需要一個始終處於活動狀態並檢查I/O等的主設備,並且可以將狀態更改發送給每個子應用程序/活動。就像「我們剛剛失去了互聯網連接」等等。
現在,這個master是一個singleton,它首先被啓動器活動實例化,並且每個activity/sub-app都可以通過傳遞適當的接口來註冊該活動希望獲得什麼更新。
這是工作,但它感覺不對,因爲單身人士需要上下文來訪問系統資源,以確定像互聯網或gps系統狀態。如果單身人員被操作系統所殺,比單純的「getInstance」不會有太大的好處,因爲單身人士會以某種方式需要獲取上下文。我已經閱讀過有關擴展Application類並在那裏創建一個靜態成員上下文的信息,但是這個變量必須是volatile的,並且如果整個應用程序處於crash-after-crash/kill狀態,它將返回null。它感覺不安全。
此外,還應該有一種可能性,主人以某種方式打開用戶對話框以向用戶顯示警告等。這些警告在整個應用程序中看起來應該是一樣的,並且開發人員不必擔心突然彈出的時間或原因。現在,這些消息顯示爲覆蓋所有內容的自定義敬酒。當然,他們需要上下文,如果應用即將關閉,可能會出現問題。
總之,這就是我們所處的困境,我正在尋找解決方案。
那麼如何創建一個安全的主對象或活動(甚至是服務?!),可以將信息傳遞給不同的活動併發布警告等等(甚至可能關閉活動或至少命令它們關閉他們自己不需要註冊can_close接口)。
它應該是安全的,如果在崩潰後android只重新啓動活動的活動,它會以某種方式管理也重新啓動,或者至少具有/提供與以前相同的信息。
每一個想法是值得歡迎的,但應用程序的總檢修,是不可能的(沒有時間和人力)
我喜歡nr2,不幸的是我們有一個mapactivity,我討厭那些地圖,他們只會造成麻煩。碎片是一個問題,因爲我們運行android 2.3。 – NikkyD
我覺得有必要評論我的最後一個陳述,傻我,只是檢查和MapActivity的擴展活動,它只是不那麼容易找到。所以選項nr2應該像魅力*手指劃過* – NikkyD
更傻我,我不能讓mapactivity延長我的自定義活動...回到一個平方 – NikkyD