由於Application的全局變量用法是已知的。我在想也許在Application類的onCreate()方法中加載Firebase遠程配置是很好的,所有的變量都將被存儲爲「public static」並且具有初始值。在應用程序類中加載Firebase遠程配置
只是想知道這是否是一個好主意,因爲我已經試過存儲遠程CONFIGS與經典的getter/setter私人對象和經常導致空例外。
由於Application的全局變量用法是已知的。我在想也許在Application類的onCreate()方法中加載Firebase遠程配置是很好的,所有的變量都將被存儲爲「public static」並且具有初始值。在應用程序類中加載Firebase遠程配置
只是想知道這是否是一個好主意,因爲我已經試過存儲遠程CONFIGS與經典的getter/setter私人對象和經常導致空例外。
請勿使用應用程序。如果您有(或將要)有多個流程的應用程序,則某些Firebase功能可能會遇到問題。
沒有保證,將呼叫在您的應用程序將提供的值,只要在需要時自動取()早期。您應該構建您的應用程序,同時考慮到可能需要一些時間來加載遠程配置參數。如果您在啓動時絕對需要它們,請創建加載屏幕並開始提取,只有在加載完成後才能進行提取。
有使用遠程配置不同的策略,以及他們在this blog概述。
Firebase remote-configs是什麼意思?
在我的經驗,我通常使用應用程序的onCreate()開始火力地堡服務。
然後收集火力地堡令牌,聽它的變化。我使用SharedPref來存儲我的Firebase令牌。
這是我的方法。
空異常的原因是依賴於不同的環境。所以,最好是展示你的實現。
我的意思是Firebase Remote Config變量。 https://firebase.google.com/docs/remote-config/ –
我明白了。我的建議是不使用應用程序來做。原因是應用程序不能保證永遠保留所有可變變量。 您的應用程序崩潰的原因是NullPointerException,GC可能會收集您定義的變量,並且當您的Firebase實例再次訪問它時,它不再存在。 –