前提・実現したいこと
スマホ使用時間を測定するアプリをunityで作りたいです。
そのために、スマホ使用時間を測定するソースコードが知りたいのですが、探しても見つかりません。
Time.deltaTimeを使って、時間を計測するころはできたのですが、アプリを起動させ、そのアプリの画面を表示している間でないと計測してくれません。
(ソースコードは下の該当のソースコードを参照してください)
スマホ起動時に、アプリもバックグラウンドで起動させ、スマホ使用時間を測定するにはどうしたらよいのでしょうか?
発生している問題・エラーメッセージ
エラーメッセージ
該当のソースコード
C#
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4using UnityEngine.UI; 5 6public class timecount : MonoBehaviour { 7 8 float time;//時間を記録する小数も入る変数. 9 Text text; 10 11 void Start () { 12 time = 0; 13 text = GetComponent<Text>();//自分のインスペクター内からTextコンポーネントを取得. 14 } 15 16 void Update () { 17 time += Time.deltaTime;//毎フレームの時間を加算. 18 int day = (int)time/86400;//日.timeを86400で割った値. 19 int hour = (int)time/3600;//時.timeを3600で割った値. 20 int minute = (int)time/60;//分.timeを60で割った値. 21 int second = (int)time%60;//秒.timeを60で割った余り. 22 string dayText, houText, minText, secText;//テキスト形式の日・時・分・秒を用意. 23 24 if (day < 10) 25 dayText = day.ToString (); 26 else 27// dayText = day.ToString (); 28 if (hour < 10) 29 houText = "0" + hour.ToString (); 30 else 31 houText = hour.ToString (); 32 if (minute < 10) 33 minText = "0" + minute.ToString();//ToStringでint→stringに変換. 34 else 35 minText = minute.ToString(); 36 if (second < 10) 37 secText = "0" + second.ToString();//上に同じく. 38 else 39 secText = second.ToString(); 40 41 text.text = "[Time] " + dayText + "D" + houText + ":" + minText + ":" + secText ; 42 } 43} 44
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。

回答2件
あなたの回答
tips
プレビュー