如何跟踪我的 android 应用用户的详细统计信息?

How can I track my android app users detailed statistics?

UsageStatsManager 似乎提供了您设备上所有应用的一般统计信息,但是,我有兴趣跟踪我自己的应用用户的详细统计信息。 例如,某个 activity 保持打开多少秒?打开了多少次?一个按钮被点击了多少次?

Google 提供了一种很好的方式来报告您的应用统计信息和报告 here 但这不是我要找的!

我正在寻找的是一个符合我的意图的应用程序(我怀疑它是否可行)或者 另一个 class/package 提供此功能,因为我将其插入我的代码(更像是一个附加到我的意图的使用计算器)

为您的 android 应用程序集成 Google 分析。

Parse.com 也有免费的分析工具。您可以定义自己的事件,然后在 Web 控制台中浏览它们。

没有任何日志库可供您根据需要选择并将其集成到您的应用程序中。喜欢 Google Analytics、Flurry 等。通过互联网搜索或尝试以下 link...

https://android-arsenal.com/tag/57

您可以使用

  1. Google 分析 - http://www.google.co.in/analytics/
  2. Parse.com - https://parse.com/products/analytics
  3. Flurry 分析 - http://www.flurry.com/solutions/analytics

整合 google 分析。如此简单:

将此代码添加到 MyApplication class(Consts 是我的私有 class 其中定义了 属性 id):

import com.google.android.gms.analytics.GoogleAnalytics;
import com.google.android.gms.analytics.Tracker;

   public class MyApplication extends Application {     
        private static Context context; 
        public enum TrackerName {
          APP_TRACKER, // Tracker used only in this app.
          GLOBAL_TRACKER, // Tracker used by all the apps from a company. eg: roll-up tracking.
          ECOMMERCE_TRACKER, // Tracker used by all ecommerce transactions from a company.
        }

        HashMap<TrackerName, Tracker> mTrackers = new HashMap<TrackerName, Tracker>();

        public synchronized Tracker getTracker(TrackerName trackerId) {
          if (!mTrackers.containsKey(trackerId)) {

            GoogleAnalytics analytics = GoogleAnalytics.getInstance(this);
            Tracker t = analytics.newTracker(Consts.ANALYTICS_PROPERTY_ID);
            mTrackers.put(trackerId, t);

          }
          return mTrackers.get(trackerId);
        }

        public void onCreate(){
            super.onCreate();
            MyApplication.context = getApplicationContext();  
        }

        public static Context getAppContext() {
            return MyApplication.context;
        }

    }

并将此代码添加到您的片段文件中:

import com.google.android.gms.analytics.HitBuilders;
import com.google.android.gms.analytics.Tracker;


Tracker t = ((MyApplication) getActivity().getApplication()).getTracker(TrackerName.APP_TRACKER);       
t.setScreenName("My screen name");
t.send(new HitBuilders.AppViewBuilder().build());