アプリケーションの利用可能な時間を制御します。
利用時間の制御を開始するにはAppTimeManager#initメソッドを使用します。 利用時間外であることはAppTimeDelegateインターフェースのexecuteAtInvalidTimeメソッドで通知されます。
import com.fujitsu.imaps.plugin.appmanager.AppTimeManager; import com.fujitsu.imaps.plugin.appmanager.AppTimeDelegate; ・ ・ AppTimeManager appTimeManager = null; private void checkTime() { appTimeManager = AppTimeManager.getInstance(this .getApplicationContext()); new CheckTimeTask(new MyAppTimeDelegate()).execute(); } class CheckTimeTask extends AsyncTask<String, String, String> { AppTimeDelegate appTimeDelegate = null; CheckTimeTask(AppTimeDelegate appTimeDelegate) { this.appTimeDelegate = appTimeDelegate; } protected String doInBackground(String... params) { try { // 利用時間の制御の開始処理 if (appTimeManager.init(appTimeDelegate)) { return "OK"; } else { return "OUT_OF_TIME"; } } catch (Exception e) { return "EXCEPTION"; } } protected void onPostExecute(String result) { if (result.equals("OK")) { // 開始処理が成功した場合の処理 } else if (result.equals("EXCEPTION")) { // 開始処理で例外が発生した場合の処理 } else if (result.equals("OUT_OF_TIME")) { // 開始処理で利用時間外であった処理はMyAppTimeDelegateでしているためここでは何もしない } } } class MyAppTimeDelegate implements AppTimeDelegate { public void executeAtInvalidTime(int result) { try { if (appTimeManager.isStarted()) { if (result == AppTimeManager.OUT_OF_TIME) { // 開始処理後に利用時間外となった場合の処理 } else { // 開始処理後に利用不可能な日となった場合の処理 } } else { if (result == AppTimeManager.OUT_OF_TIME) { // 開始処理で利用時間外であった場合の処理 } else { // 開始処理で利用不可能な日であった場合の処理 } } } catch (Exception e) { // 例外処理 } } }
AppTimeManager appTimeManager = AppTimeManager.getInstance(this .getApplicationContext()); try { String startTime = appTimeManager.getStartTime(); // 利用時間の開始時間を取得する場合 } catch (Exception e) { // 例外処理 }
AppTimeManager appTimeManager = AppTimeManager.getInstance(this .getApplicationContext()); appTimeManager.destroy();
注意