iPhone 用の Web アプリケーションがあり、Web ページにフォーカスがあるとき、つまり Safari が開いているときに Javascript 関数をトリガーする必要があります。
私が達成したいのは、ユーザーが電話リンクをクリックして通話を開始したときに、何らかの方法でタイマーを開始することです。通話が終了すると、Safari が再びポップアップし、タイマーが終了します。
これを行う方法はありますか?
よろしくお願いします
ライナス
iPhone 用の Web アプリケーションがあり、Web ページにフォーカスがあるとき、つまり Safari が開いているときに Javascript 関数をトリガーする必要があります。
私が達成したいのは、ユーザーが電話リンクをクリックして通話を開始したときに、何らかの方法でタイマーを開始することです。通話が終了すると、Safari が再びポップアップし、タイマーが終了します。
これを行う方法はありますか?
よろしくお願いします
ライナス
これを試して:
呼び出しのリンクをトリガーする場合は、localStorage-item に実際の時間を設定します。
$("#yourButton").click(function() {
var actualTime = new Date().getTime();
window.localStorage.setItem('callStart', actualTime);
})
その後、ユーザーが通話を終了した後にストレージを読み取る必要があります。これは、開始ページの document.ready で設定できます。
$(document).ready(function() {}) で
// check for the localStorageItem
if (window.localStorage.getItem('callStart')) {
// get it
var timeStart = window.localStorage.getItem('callStart');
var now = new Date().getTime();
/*
Now calculate here the difference now - timeStart
and you will get seconds, minutes or whatever you want
*/
// !!! Dont forget to clear the localStorageItem
window.localStorage.removeItem('callStart');
}
これは私が試すものです。HTML5-localStorage を使用すると、ユーザーがアプリを停止したり、デバイスが自動的にロックされたりしても、キー/値を保存でき、データは失われません。
これが少し役立つことを願っています。
追加: JSON を localStorageItem の値として保存することもできます。したがって、callID を設定し、ユーザーの呼び出し履歴を実装できます。