version:1.7.9

fix:修复竖屏报错
update:增加客服,适配不同版本ai精准学
This commit is contained in:
2024-06-11 14:49:13 +08:00
parent 53eddf9215
commit 512f2ed70c
91 changed files with 4386 additions and 789 deletions

View File

@@ -5,12 +5,16 @@ import android.content.ComponentName;
import android.content.ContentResolver;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.os.Build;
import android.provider.Settings;
import android.text.TextUtils;
import android.util.Log;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.hjq.toast.Toaster;
import com.tencent.mmkv.MMKV;
import com.uiui.zyos.bean.LessonJson;
import com.uiui.zyos.config.CommonConfig;
@@ -61,14 +65,14 @@ public class OpenApkUtils {
int is_activation = Settings.Global.getInt(mContext.getContentResolver(), CommonConfig.UIUI_ACTIVATION_KEY, 0);
if (is_activation != 1) {
ApkUtils.openPackage(mContext, "com.uiui.zy", "com.uiui.zy.activity.main.MainActivity");
ToastUtil.show("请激活设备后使用");
Toaster.show("请激活设备后使用");
}
return is_activation == 1;
}
public boolean openPackageWithArgs(String packageName, String className, String name, String args) {
if (!ApkUtils.isAvailable(mContext, packageName)) {
ToastUtil.show("应用未安装");
Toaster.show("应用未安装");
return false;
}
ComponentName cn = new ComponentName(packageName, className);
@@ -181,35 +185,35 @@ public class OpenApkUtils {
}};
private void sendRuningApp(String packageName) {
AppUsedTimeUtils.getInstance().setAppPackageName(packageName);
AppUsedTimeUtils.getInstance().setStartTime(System.currentTimeMillis());
AppUsedTimeUtils.getInstance().sendRunningApp(() -> {
});
// AppUsedTimeUtils.getInstance().setAppPackageName(packageName);
// AppUsedTimeUtils.getInstance().setStartTime(System.currentTimeMillis());
// AppUsedTimeUtils.getInstance().sendRunningApp(() -> {
// });
}
public void openApp(String packageName) {
if (!ApkUtils.isAvailable(mContext, packageName)) {
ToastUtil.show("应用未安装");
Toaster.show("应用未安装");
return;
}
if (isCloudLessonMod(packageName)) {
ApkUtils.openPackage(mContext, packageName);
sendRuningApp(packageName);
} else {
ToastUtil.show("专注模式只允许使用指定应用");
Toaster.show("专注模式只允许使用指定应用");
}
}
public void openApp(String packageName, String className) {
if (!ApkUtils.isAvailable(mContext, packageName)) {
ToastUtil.show("应用未安装");
Toaster.show("应用未安装");
return;
}
if (isCloudLessonMod(packageName)) {
ApkUtils.openPackage(mContext, packageName, className);
sendRuningApp(packageName);
} else {
ToastUtil.show("专注模式只允许使用指定应用");
Toaster.show("专注模式只允许使用指定应用");
}
}
@@ -224,7 +228,7 @@ public class OpenApkUtils {
sendRuningApp(packageName);
}
} else {
ToastUtil.show("专注模式只允许使用指定应用");
Toaster.show("专注模式只允许使用指定应用");
}
}
@@ -239,7 +243,7 @@ public class OpenApkUtils {
sendRuningApp(packageName);
}
} else {
ToastUtil.show("专注模式只允许使用指定应用");
Toaster.show("专注模式只允许使用指定应用");
}
}
@@ -254,7 +258,7 @@ public class OpenApkUtils {
sendRuningApp(packageName);
}
} else {
ToastUtil.show("专注模式只允许使用指定应用");
Toaster.show("专注模式只允许使用指定应用");
}
}
@@ -269,7 +273,7 @@ public class OpenApkUtils {
sendRuningApp(packageName);
}
} else {
ToastUtil.show("专注模式只允许使用指定应用");
Toaster.show("专注模式只允许使用指定应用");
}
}
@@ -282,9 +286,35 @@ public class OpenApkUtils {
if (isCloudLessonMod(packageName)) {
if (openPackageWithArgs(packageName, className, "StartArgs", "中华文化")) {
sendRuningApp(packageName);
} else {
Toaster.show("打开失败:应用未安装");
}
} else {
ToastUtil.show("专注模式只允许使用指定应用");
Toaster.show("专注模式只允许使用指定应用");
}
}
public boolean isNewAiApp() {
PackageManager pm = mContext.getPackageManager();
PackageInfo packageInfo = null;
try {
packageInfo = pm.getPackageInfo(JxwPackageConfig.JXW_PRECISION_PACKAGE_NAME, 0);
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
if (packageInfo == null) {
return false;
}
long appVersionCode;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
appVersionCode = packageInfo.getLongVersionCode();
} else {
appVersionCode = packageInfo.versionCode;
}
if (appVersionCode == 85) {
return false;
} else {
return true;
}
}
@@ -293,16 +323,79 @@ public class OpenApkUtils {
return;
}
String packageName = JxwPackageConfig.JXW_PRECISION_PACKAGE_NAME;
String className = JxwPackageConfig.JXW_PRECISION_CLASS_NAME;
String className = JxwPackageConfig.JXW_PRECISION_CLASS_NAME_85;
if (isCloudLessonMod(packageName)) {
if (openPackageWithArgs(packageName, className, "tiku_func_type", args)) {
sendRuningApp(packageName);
} else {
Toaster.show("打开失败:应用未安装");
}
} else {
ToastUtil.show("专注模式只允许使用指定应用");
Toaster.show("专注模式只允许使用指定应用");
}
}
public void openAiPrecision(int page, String subject) {
if (!checkActivation()) {
return;
}
String packageName = JxwPackageConfig.JXW_PRECISION_PACKAGE_NAME;
String className = JxwPackageConfig.JXW_PRECISION_CLASS_NAME_1;
if (isCloudLessonMod(packageName)) {
if (openAiWithArgs(packageName, className, page, subject)) {
sendRuningApp(packageName);
} else {
Toaster.show("打开失败:应用未安装");
}
} else {
Toaster.show("专注模式只允许使用指定应用");
}
}
public static final String NAME_PRIMARY_SCHOOL = "小学";
public static final String NAME_MIDDLE_SCHOOL = "初中";
public static final String NAME_HIGH_SCHOOL = "高中";
/**
* page_navigate 写死传0
* appoint_subject_list 不需要传
* appoint_period_name 这个是学段,一定要传
* <p>
* public static final String NAME_PRIMARY_SCHOOL = "小学";
* public static final String NAME_MIDDLE_SCHOOL = "初中";
* public static final String NAME_HIGH_SCHOOL = "高中";
* <p>
* appoint_period_name字段的值是上面这三个之一
*
* @param packageName
* @param className
* @param page
* @param subject
* @return
*/
public boolean openAiWithArgs(String packageName, String className, int page, String subject) {
if (!ApkUtils.isAvailable(mContext, packageName)) {
Toaster.show("应用未安装");
return false;
}
ComponentName cn = new ComponentName(packageName, className);
Intent intent = new Intent();
intent.setComponent(cn);
intent.putExtra("page_navigate", page);
intent.putExtra("appoint_subject_name", subject);
intent.putExtra("appoint_period_name", NAME_HIGH_SCHOOL);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
try {
mContext.startActivity(intent);
return true;
} catch (Exception e) {
Log.e(TAG, "openPackageWithArgs: " + e.getMessage());
}
return false;
}
public void openAppWithoutArgs(String packageName, String className) {
if (!checkActivation()) {
return;
@@ -310,7 +403,7 @@ public class OpenApkUtils {
if (isCloudLessonMod(packageName)) {
openApp(packageName, className);
} else {
ToastUtil.show("专注模式只允许使用指定应用");
Toaster.show("专注模式只允许使用指定应用");
}
}
@@ -325,7 +418,7 @@ public class OpenApkUtils {
sendRuningApp(packageName);
}
} else {
ToastUtil.show("专注模式只允许使用指定应用");
Toaster.show("专注模式只允许使用指定应用");
}
}
@@ -340,13 +433,13 @@ public class OpenApkUtils {
sendRuningApp(packageName);
}
} else {
ToastUtil.show("专注模式只允许使用指定应用");
Toaster.show("专注模式只允许使用指定应用");
}
}
public boolean openLetterApp(String packageName, String className) {
if (!ApkUtils.isAvailable(mContext, packageName)) {
ToastUtil.show("应用未安装");
Toaster.show("应用未安装");
return false;
}
ComponentName cn = new ComponentName(packageName, className);
@@ -377,7 +470,7 @@ public class OpenApkUtils {
sendRuningApp(packageName);
}
} else {
ToastUtil.show("专注模式只允许使用指定应用");
Toaster.show("专注模式只允许使用指定应用");
}
}