在我的應用程序中,我創建了一個廣播接收器,它將監聽網絡更改。在OnReceive中,它將檢查設備是否剛剛連接到WiFi,然後開始在後臺上傳。沒有活動會顯示,所以我需要做什麼來初始化框架沒有一個飛濺活動?我不需要框架的任何頁面導航部分,所以精簡的初始化將是最佳的。如何初始化MvvmCross框架而不使用splash活動?
private override void OnReceive(Context context, Intent intent)
{
bool isWifiConnected = false;
bool isMobileConnected = false;
if (intent.Action.Equals(ConnectivityManager.ConnectivityAction))
{
NetworkInfo networkInfo = (NetworkInfo)intent.GetParcelableExtra(ConnectivityManager.ExtraNetworkInfo);
if (networkInfo.IsConnected)
{
if (networkInfo.Type == (int)ConnectivityType.Wifi)
{
isWifiConnected = true;
}
if (networkInfo.Type == (int)ConnectivityType.Mobile)
{
isMobileConnected = true;
}
}
}
if (isWifiConnected)
{
StartUp(); //What do I put in this private method?
}
同意。如果應用程序中沒有「視圖」(即活動),那麼有一個處理它們的框架有什麼意義? – ctacke
你說得對,我真正追求的是我使用RegisterServiceInstance添加到應用程序中的一些服務。但是,這些服務可能會在框架中使用服務(但不是UI的任何東西)。所以我猜想我正在進行的初始化是爲IoC,跟蹤和可能的GPS獲取框架服務並運行,但不是UI。這可能嗎?謝謝 –
我認爲這是一個我們Droid新手需要小心行事的區域。如果您的廣播接收機與其他活動,服務等共享相同的,那麼我認爲您的廣播接收機可能會與您的活動共享相同的進程/地址空間。如果是這種情況,那麼最好將Android應用程序進行子類化,並將其用作創建Mvvm應用程序基礎結構的位置,而不是使用該工作的啓動畫面活動。 –
Stuart