本帖最后由 se关注达人 于 2021-9-21 17:36 编辑
360儿童手表如何进入调试模式?
360儿童手表如何进入调试模式(工程模式)呢?今天带大家来看一下
工具/原料
360儿童手表S1/P1
W931_1.0.2106280_dev_userW931_1.0.2106280_dev_user
方法/步骤
1
首先在主页面中找到设置
2
进入设置后长按左上角“设置”两个小字
3
之后就需要输入调试密码,我这里的版本是W931_1.0.2106280_dev_user,属于S1,P1是W920,但暂时还没有找到密码,下面是我提取的360儿童手表P1 setting(设置)以及系统ROM更新包的文件,还在破解当中,大家可以通过链接下载进行反编译算法破解apk安装包。有结果麻烦360论坛儿童手表板块回答一下。
1.“设置”界面提取安装包
下载链接:https://pan.baidu.com/s/18sdlytByDMwLHUBM3veLjA
密码:1234
2.ROM包下载
下载链接:http://dl.360safe.com/babydat/up ... 06240_W920_USER.zip
3.破解应用软件可上网自行查找,像那种能打开APK或odex/dex文件的反编译软件都行。
4
这两幅图片为应用截图
我提取出来了一部分Java代码,希望有人能将其解密出来
- private String generateKey() {
- String[] sort;
- WolfPlatformManager instance = WolfPlatformManager.getInstance(this.mContext);
- String deviceKey = instance.getDeviceKey();
- String deviceId = instance.getDeviceId();
- String encode = MD5Utils.encode(instance.getHardCode());
- if (TextUtils.isEmpty(deviceKey)) {
- sort = StrUtil.sort(new String[]{instance.getIMEI(), instance.getQRCode(), encode});
- } else {
- sort = StrUtil.sort(new String[]{deviceKey, deviceId, encode});
- }
- return MD5Utils.encode(StrUtil.dumpStringArray(sort));
- }
- private String getCode(String str) {
- str = AESUtils.encryptAESBase64(generateKey(), iv, str);
- int length = str.length() / 6;
- StringBuilder stringBuilder = new StringBuilder();
- for (int i = 0; i < 6; i++) {
- stringBuilder.append(str.charAt(i * length) % 10);
- }
- return stringBuilder.toString();
- }
- public boolean openDevelopMode(String str) {
- if (TextUtils.isEmpty(this.mDevelopCode)) {
- this.mDevelopCode = getDevelopModeCode();
- }
- boolean equals = this.mDevelopCode.equals(str);
- Global.putInt(this.mContext.getContentResolver(), TYPE_DEVELOPER_MODE, equals);
- return equals;
- }
- public boolean openFactoryMode(String str) {
- if (TextUtils.isEmpty(this.mFactoryCode)) {
- this.mFactoryCode = getFactoryModeCode();
- }
- boolean equals = this.mFactoryCode.equals(str);
- Global.putInt(this.mContext.getContentResolver(), TYPE_FACTORY_MODE, equals);
- return equals;
- }
- public DevelopModeHelper(Context context) {
- this.mContext = context;
- }
- public static void hideDevelopMode(Context context) {
- Global.putInt(context.getContentResolver(), TYPE_DEVELOPER_MODE, 0);
- }
- public static void hideFactoryMode(Context context) {
- Global.putInt(context.getContentResolver(), TYPE_FACTORY_MODE, 0);
- }
- public static boolean isDevelopModeOpen(Context context) {
- return 1 == Global.getInt(context.getContentResolver(), TYPE_DEVELOPER_MODE, 0);
- }
- public static boolean isFactoryModeOpen(Context context) {
- return 1 == Global.getInt(context.getContentResolver(), TYPE_FACTORY_MODE, 0);
- }
- public String getDevelopModeCode() {
- return getCode(TYPE_DEVELOPER_MODE);
- }
- public String getFactoryModeCode() {
- return getCode(TYPE_FACTORY_MODE);
- }
-
复制代码
|
|
|
|
评论
直达楼层