项目整理
This commit is contained in:
160
app/src/main/java/com/gh/common/util/DataCollectionUtils.java
Normal file
160
app/src/main/java/com/gh/common/util/DataCollectionUtils.java
Normal file
@ -0,0 +1,160 @@
|
||||
package com.gh.common.util;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.Build;
|
||||
|
||||
import com.gh.download.DownloadEntity;
|
||||
import com.gh.gamecenter.db.info.ConcernInfo;
|
||||
import com.gh.gamecenter.entity.GameEntity;
|
||||
import com.gh.gamecenter.entity.NewsDetailEntity;
|
||||
import com.gh.gamecenter.manager.ConcernManager;
|
||||
import com.gh.gamecenter.manager.DataCollectionManager;
|
||||
import com.gh.gamecenter.manager.PackageManager;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* Created by LGT on 2016/12/9.
|
||||
* 数据收集 工具类(data.ghzhushou.com)
|
||||
*/
|
||||
public class DataCollectionUtils {
|
||||
|
||||
// 上传助手奔溃数据
|
||||
public static void uploadError(Context context, String msg) {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("content", msg);
|
||||
map.put("type", android.os.Build.MODEL);
|
||||
map.put("system", android.os.Build.VERSION.SDK_INT + "=" + android.os.Build.VERSION.RELEASE);
|
||||
// WIFI实时
|
||||
DataCollectionManager.onEvent(context, "error", map, NetworkUtils.isWifiConnected(context));
|
||||
}
|
||||
|
||||
// 上传下载数据(开始、完成)
|
||||
public static void uploadDownload(Context context, DownloadEntity downloadEntity, String status) {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("game", downloadEntity.getName());
|
||||
map.put("game_id", downloadEntity.getGameId());
|
||||
if (downloadEntity.isPluggable()) {
|
||||
map.put("method", "插件化");
|
||||
map.put("btn_status", "插件化");
|
||||
} else if (downloadEntity.isUpdate()) {
|
||||
map.put("method", "更新");
|
||||
map.put("btn_status", "更新");
|
||||
} else {
|
||||
map.put("method", "正常");
|
||||
map.put("btn_status", "下载");
|
||||
}
|
||||
map.put("platform", PlatformUtils.getInstance(context).getPlatformName(downloadEntity.getPlatform()));
|
||||
map.put("status", status);
|
||||
map.put("location", downloadEntity.getLocation());
|
||||
map.put("entrance", downloadEntity.getEntrance());
|
||||
map.put("installed", downloadEntity.getInstalled());
|
||||
map.put("network", NetworkUtils.getConnectedType(context));
|
||||
DataCollectionManager.onEvent(context, "download", map);
|
||||
}
|
||||
|
||||
// 上传点击数据
|
||||
public static void uploadClick(Context context, String... args) {
|
||||
if (args.length < 2) {
|
||||
return;
|
||||
}
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("location", args[0]);
|
||||
map.put("page", args[1]);
|
||||
if (args.length == 3) {
|
||||
map.put("title", args[2]);
|
||||
}
|
||||
DataCollectionManager.onEvent(context, "click-item", map);
|
||||
}
|
||||
|
||||
// 上传游戏数据
|
||||
public static void uploadGame(Context context, GameEntity gameEntity, int seconds, String from) {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("game", gameEntity.getName());
|
||||
map.put("game_id", gameEntity.getId());
|
||||
map.put("time", seconds);
|
||||
map.put("from", from);
|
||||
DataCollectionManager.onEvent(context, "game", map);
|
||||
}
|
||||
|
||||
// 上传新闻数据
|
||||
public static void uploadNews(Context context, NewsDetailEntity newsDetailEntity,
|
||||
GameEntity gameEntity, int seconds, String from) {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("title", newsDetailEntity.getTitle());
|
||||
map.put("type", newsDetailEntity.getType());
|
||||
map.put("author", newsDetailEntity.getAuthor());
|
||||
if (gameEntity != null) {
|
||||
map.put("game", gameEntity.getName());
|
||||
map.put("game_id", gameEntity.getId());
|
||||
}
|
||||
map.put("time", seconds);
|
||||
map.put("from", from);
|
||||
DataCollectionManager.onEvent(context, "news", map);
|
||||
}
|
||||
|
||||
// 上传安装或卸载数据
|
||||
public static void uploadInorunstall(Context context, String type, String packageName) {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("type", type);
|
||||
map.put("packageName", packageName);
|
||||
DataCollectionManager.onEvent(context, "inorunstall", map);
|
||||
}
|
||||
|
||||
// 上传劫持数据
|
||||
public static void uploadHijack(Context context, DownloadEntity downloadEntity) {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("url", downloadEntity.getUrl());
|
||||
map.put("game", downloadEntity.getName());
|
||||
map.put("game_id", downloadEntity.getGameId());
|
||||
map.put("platform", downloadEntity.getPlatform());
|
||||
map.put("hijack_url", downloadEntity.getError());
|
||||
DataCollectionManager.onEvent(context, "hijack", map);
|
||||
}
|
||||
|
||||
// 上传用户数据
|
||||
public static void uploadUser(Context context) {
|
||||
ConcernManager concernManager = new ConcernManager(context);
|
||||
ArrayList<String> concernList = new ArrayList<>();
|
||||
for (ConcernInfo entity : concernManager.getAllConcern()) {
|
||||
if (entity.isConcern()) {
|
||||
concernList.add(entity.getGameName());
|
||||
}
|
||||
}
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("type", Build.MODEL);
|
||||
map.put("system", Build.VERSION.SDK_INT + "=" + Build.VERSION.RELEASE);
|
||||
map.put("install", PackageManager.getInstalledList());
|
||||
map.put("concern", concernList);
|
||||
DataCollectionManager.upsert(context, "user", map);
|
||||
}
|
||||
|
||||
// 上传搜索数据
|
||||
public static void uploadSearch(Context context, String... args) {
|
||||
if (args.length < 2) {
|
||||
return;
|
||||
}
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("key", args[0]);
|
||||
map.put("from", args[1]);
|
||||
if (args.length == 3) {
|
||||
map.put("click", args[2]);
|
||||
}
|
||||
DataCollectionManager.onEvent(context, "search", map);
|
||||
}
|
||||
|
||||
// 上传关注数据
|
||||
public static void uploadConcern(Context context, String... args) {
|
||||
if (args.length < 3) {
|
||||
return;
|
||||
}
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("game", args[0]);
|
||||
map.put("game_id", args[1]);
|
||||
map.put("type", args[2]);
|
||||
DataCollectionManager.onEvent(context, "concern", map);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user