1
我正在創建一個在手機重新啓動時自動啓動的應用程序。我想在手機完成重啓時運行一些事件。 UiApp甚至在設備完成復位之前運行,因爲我將應用程序配置爲自動啓動應用程序。哪個事件告訴您設備已成功啓動
我應該聽什麼事件,並且在手機完成重啓時開始,而不是在兩者之間?
感謝
我正在創建一個在手機重新啓動時自動啓動的應用程序。我想在手機完成重啓時運行一些事件。 UiApp甚至在設備完成復位之前運行,因爲我將應用程序配置爲自動啓動應用程序。哪個事件告訴您設備已成功啓動
我應該聽什麼事件,並且在手機完成重啓時開始,而不是在兩者之間?
感謝
有可能知道,如果系統在啓動時使用:
ApplicationManager.isStartup()
您需要查詢該使用計時器,直到它返回false。但是必須牢記的是,這意味着操作系統已經啓動並且系統能夠運行應用程序。這並不意味着您的應用程序運行的整個環境已完全建立。例如(如邁克爾指出的)microSD卡可能尚未安裝,網絡連接可能尚未建立,或者您的應用程序可能依賴的某些其他服務尚不可用。在你開始使用你的應用程序之前,你需要驗證它們是否可用。
你需要採取的方法是:
請注意,microSD卡的裝載名稱是「SDCard」。
class FileSystemListenerImpl implements FileSystemListener
{
final static String SDCARD_NAME ="SDCard/";
public FileSystemListenerImpl()
{
}
public void rootChanged(int state, String rootName)
{
if(state == FileSystemListener.ROOT_ADDED)
{
if(SDCARD_NAME.equals(rootName))
{
_isMicroSDReady=true;
scheduleApplicationStart();
removeFileSystemListener(this);
}
}
else if(state == FileSystemListener.ROOT_REMOVED)
{
}
}
}
在重新啓動完成之前運行時遇到了什麼問題? –
@MichaelDonohue從SD卡中讀取文件 –
您是否嘗試過使用文件系統偵聽程序來找出sdcard文件系統準備好的時間? –