diff --git a/app/src/main/java/com/gh/common/util/DeviceTokenUtils.kt b/app/src/main/java/com/gh/common/util/DeviceTokenUtils.kt index a9228ee6ee..895a84372d 100644 --- a/app/src/main/java/com/gh/common/util/DeviceTokenUtils.kt +++ b/app/src/main/java/com/gh/common/util/DeviceTokenUtils.kt @@ -16,7 +16,7 @@ import java.io.File object DeviceTokenUtils { - const val DEVICE_ID = "deviceId" + const val DEVICE_ID = "uuid" // 同步服务器时间 @JvmStatic @@ -45,28 +45,39 @@ object DeviceTokenUtils { @JvmStatic fun getLaunchType(): LunchType { + var lunchType: LunchType? = null val values = PreferenceManager.getDefaultSharedPreferences(HaloApp.getInstance().application).all // 版本更新 if (values.isNotEmpty()) { for (value in values) { if (value.key.contains("isNewFirstLaunchV")) { - return LunchType.UPDATE + lunchType = LunchType.update + break } } } // 再次重装 - if (!getDeviceId().isNullOrEmpty()) { - return LunchType.AGAIN + if (lunchType == null && !getDeviceId().isNullOrEmpty()) { + lunchType = LunchType.again } - setDeviceId(Util_System_Phone_State.getDeviceId(HaloApp.getInstance().application)) // 保存deviceId // 首次安装 - return LunchType.FIRST + if (lunchType == null) { + lunchType = LunchType.first + } + // 保存deviceId + var deviceId = Util_System_Phone_State.getDeviceId(HaloApp.getInstance().application) + if (deviceId.isNullOrEmpty()) { + deviceId = Utils.getTime(HaloApp.getInstance().application).toString() + } + setDeviceId(deviceId) + + return lunchType } private fun getDeviceFileList(): List { val sdCardDir = Environment.getExternalStorageDirectory() val fileList: MutableList = ArrayList() - fileList.add(File(sdCardDir.path + "/gh/$DEVICE_ID")) + fileList.add(File(sdCardDir.path + "/gh-uuid/$DEVICE_ID")) fileList.add(File(sdCardDir.path + "/system/$DEVICE_ID")) fileList.add(File(sdCardDir.path + "/data/$DEVICE_ID")) return fileList @@ -74,7 +85,7 @@ object DeviceTokenUtils { @Synchronized - fun setDeviceId(deviceId: String) { + private fun setDeviceId(deviceId: String) { //将deviceId存到sp val sp = PreferenceManager.getDefaultSharedPreferences(HaloApp.getInstance().application) val edit = sp.edit() @@ -122,7 +133,7 @@ object DeviceTokenUtils { } enum class LunchType { - FIRST, - UPDATE, - AGAIN + first, + update, + again } diff --git a/app/src/main/java/com/gh/common/util/LogUtils.java b/app/src/main/java/com/gh/common/util/LogUtils.java index 2128eb384e..1e747a41cc 100644 --- a/app/src/main/java/com/gh/common/util/LogUtils.java +++ b/app/src/main/java/com/gh/common/util/LogUtils.java @@ -21,7 +21,7 @@ import org.json.JSONObject; */ public class LogUtils { - public static void uploadDevice(LunchType launchType) { // todo 对接数据 + public static void uploadDevice(LunchType launchType) { JSONObject object = new JSONObject(); Application application = HaloApp.getInstance().getApplication(); try { @@ -59,7 +59,7 @@ public class LogUtils { public static void uploadQuestionReadTime(String tracers, int readTime, Questions questions) { JSONObject object = new JSONObject(); try { - object.put("subject", "answer"); + object.put("subject", "question"); object.put("community_id", UserManager.getInstance().getCommunity().getId()); object.put("community_name", UserManager.getInstance().getCommunity().getName()); object.put("question_id", questions.getId()); diff --git a/app/src/main/java/com/gh/gamecenter/MainActivity.java b/app/src/main/java/com/gh/gamecenter/MainActivity.java index f64f35ca07..2deb3a1ed6 100644 --- a/app/src/main/java/com/gh/gamecenter/MainActivity.java +++ b/app/src/main/java/com/gh/gamecenter/MainActivity.java @@ -40,12 +40,14 @@ import com.gh.common.util.ConcernUtils; import com.gh.common.util.DataCollectionUtils; import com.gh.common.util.DataLogUtils; import com.gh.common.util.DataUtils; +import com.gh.common.util.DeviceTokenUtils; import com.gh.common.util.DeviceUtils; import com.gh.common.util.DialogUtils; import com.gh.common.util.DirectUtils; import com.gh.common.util.EntranceUtils; import com.gh.common.util.GameUtils; import com.gh.common.util.GsonUtils; +import com.gh.common.util.LogUtils; import com.gh.common.util.NetworkUtils; import com.gh.common.util.PackageUtils; import com.gh.common.util.PlatformUtils; @@ -714,6 +716,7 @@ public class MainActivity extends BaseActivity { UpdateManager.getInstance(this).checkUpdate(true, null); if (isNewFirstLaunch) { + LogUtils.uploadDevice(DeviceTokenUtils.getLaunchType()); getPluginUpdate(); sp.edit().putBoolean("isNewFirstLaunchV" + PackageUtils.getVersionName(this), false).apply(); diff --git a/app/src/main/java/com/gh/gamecenter/room/AppDatabase.java b/app/src/main/java/com/gh/gamecenter/room/AppDatabase.java index 5f46811665..4cbdcf175e 100644 --- a/app/src/main/java/com/gh/gamecenter/room/AppDatabase.java +++ b/app/src/main/java/com/gh/gamecenter/room/AppDatabase.java @@ -67,7 +67,8 @@ public abstract class AppDatabase extends RoomDatabase { static final Migration MIGRATION_5_6 = new Migration(5, 6) { @Override public void migrate(@NonNull SupportSQLiteDatabase database) { - // TODO 增加迁移到 6 的处理 + database.execSQL("Alter TABLE UserInfoEntity add auth TEXT"); + database.execSQL("Alter TABLE UserInfoEntity add introduce TEXT"); } };