■
こんばんわ
もうすぐ、アプリリリースとなったのでアプリの操作履歴が取れるようにしてみました。
GoogleAnalyticsを使用して「/hoge/fuga」みたいな物を沢山埋め込みました。
普通のWebページと同じような感じでページの識別が出来それぞれのアクセス数が記録出来ます。
埋め込んだのは以下の物です。
アプリが実行された時に1回実行されるメソッド
アクティビティのonCreate()
Build.xxx の情報
実行した、機種やSDKのバージョンを記録
UUIDを生成してユーザの識別
e.putString(tag, uuid);を使って初回起動時にUUIDを保存します。
onCreate()のソース
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.v(TAG, "onCreate"); //途中省略 //uuid String uuid; uuid = get_uuid(); //get if(uuid==null){ Log.v(TAG, "uuid null"); UUID id = UUID.randomUUID(); uuid = id.toString(); put_uuid(uuid); //put } //Analytics m_tracker = GoogleAnalyticsTracker.getInstance(); m_tracker.start("UA-xxxxxx-1", 60, this); m_tracker.trackPageView("onCreate"); m_tracker.trackPageView(m_app_name); String trk; trk = String.format("/brand/%s", Build.BRAND); m_tracker.trackPageView(trk); trk = String.format("/manufacture/%s", Build.MANUFACTURER); m_tracker.trackPageView(trk); trk = String.format("/model/%s", Build.MODEL); m_tracker.trackPageView(trk); trk = String.format("/sdk_int/%s", Build.VERSION.SDK_INT); m_tracker.trackPageView(trk); trk = String.format("/uuid/%s", uuid); m_tracker.trackPageView(trk);
UUIDの保存と読み出し
//put_uuid private void put_uuid(String uuid){ Log.v(TAG, "put_uuid " + uuid ); SharedPreferences pref = getPreferences(MODE_WORLD_READABLE|MODE_WORLD_WRITEABLE); Editor e = pref.edit(); String tag = "uuid+m_app_name"; e.putString(tag, uuid); //put e.commit(); } //get_uuid private String get_uuid(){ SharedPreferences pref =getPreferences(MODE_WORLD_READABLE|MODE_WORLD_WRITEABLE); String tag = "uuid+m_app_name"; String uuuid = pref.getString(tag, null); //get Log.v(TAG, "get_uuid " + uuuid ); return uuuid; }
こんな感じでユーザが操作したものの回数が記録出来ます。
機種名やSDKのバージョンは今後の開発の参考になりますし、
あまり操作していない機能はいらないということにもなります。