version:1.8.4

fix:
update:增加浏览器,更换图标
This commit is contained in:
2024-07-08 10:33:35 +08:00
parent 8024283819
commit daec7f66c7
8 changed files with 105 additions and 9 deletions

View File

@@ -28,12 +28,12 @@ import androidx.viewpager.widget.ViewPager;
import com.hjq.permissions.OnPermissionCallback;
import com.hjq.permissions.Permission;
import com.hjq.permissions.XXPermissions;
import com.hjq.toast.Toaster;
import com.tencent.mmkv.MMKV;
import com.uiui.zyos.BuildConfig;
import com.uiui.zyos.R;
import com.uiui.zyos.activity.ExitActivity;
import com.uiui.zyos.base.mvp.BaseMvpActivity;
import com.uiui.zyos.view.viewpager.BaseFragmentPagerAdapter;
import com.uiui.zyos.config.CommonConfig;
import com.uiui.zyos.dialog.PrivacyPolicyDialog;
import com.uiui.zyos.fragment.subject.SubjectFragment;
@@ -43,9 +43,9 @@ import com.uiui.zyos.manager.AmapManager;
import com.uiui.zyos.manager.RemoteManager;
import com.uiui.zyos.utils.ApkUtils;
import com.uiui.zyos.utils.OpenApkUtils;
import com.hjq.toast.Toaster;
import com.uiui.zyos.utils.Utils;
import com.uiui.zyos.view.ScaleCircleNavigator;
import com.uiui.zyos.view.viewpager.BaseFragmentPagerAdapter;
import net.lucode.hackware.magicindicator.MagicIndicator;
@@ -126,6 +126,9 @@ public class MainActivity extends BaseMvpActivity implements MainContact.MainVie
public void initView() {
Log.e(TAG, "initView: ");
// OpenApkUtils.getInstance().openWordLecture();
// OpenApkUtils.getInstance().openExamSprint();
// OpenApkUtils.getInstance().openApp(JxwPackageConfig.JXW_USAGEDATE_NAME, JxwPackageConfig.JXW_USAGEDATE_CLASS);
if (Build.VERSION.SDK_INT >= 33) {
hideSystemUI();
@@ -335,6 +338,10 @@ public class MainActivity extends BaseMvpActivity implements MainContact.MainVie
@Override
public void onConnected() {
Log.e(TAG, "onConnected: ");
setDefaultDesktop();
}
private void setDefaultDesktop() {
int is_activation = Settings.Global.getInt(getContentResolver(), CommonConfig.UIUI_ACTIVATION_KEY, 0);
if (is_activation == 0) {
RemoteManager.getInstance().setDefaultDesktop(ApkUtils.ANDROID_LAUNCHER3_PACKAGE_NAME);
@@ -421,6 +428,7 @@ public class MainActivity extends BaseMvpActivity implements MainContact.MainVie
} else {
getPermission();
}
setDefaultDesktop();
}
@Override

View File

@@ -64,6 +64,13 @@ public class AppPresenter implements AppContact.AppPresenter {
// manualIcon.setIcon(mContext.getDrawable(R.drawable.icon_manual));
// desktopIcons.add(desktopIcons.size(), manualIcon);
DesktopIcon browserIcon = new DesktopIcon();
browserIcon.setIcon(mContext.getDrawable(R.drawable.uiui_zybrowser));
browserIcon.setLable("浏览器");
browserIcon.setPackageName(AppManager.BROWSER_PACKAGE_NAME);
browserIcon.setClassName(AppManager.BROWSER_CLASS_NAME);
desktopIcons.add(browserIcon);
DesktopIcon serviceIcon = new DesktopIcon();
serviceIcon.setIcon(mContext.getDrawable(R.drawable.service_icon));
serviceIcon.setLable("联系客服");

View File

@@ -397,7 +397,7 @@ public class UserFragment extends BaseFragment implements UserContact.UserView {
} else {
tv_grade.setText(grade);
}
// tv_percent.setText(snInfo.getStudy_time_ranking() + "%");
tv_percent.setText(snInfo.getStudy_time_ranking() + "%");
tv_duration.setText(String.format(getString(R.string.today_study_time), TimeUtils.formatTime(snInfo.getStudy_time())));
cl_nodata.setVisibility(View.GONE);
@@ -433,7 +433,7 @@ public class UserFragment extends BaseFragment implements UserContact.UserView {
@Override
public void setStudyStat(StudyStatBean studyStat) {
if (studyStat != null) {
tv_percent.setText(studyStat.getStudy_exceed() + "%");
// tv_percent.setText(studyStat.getStudy_exceed() + "%");
}
}

View File

@@ -10,6 +10,11 @@ public class JxwPackageConfig {
public static final String JXW_VIDEO_CLASS_NAME = "com.jxw.newyouer.activity.ExecellentActivity";
public static final String JXW_COMPOSITION_CLASS_NAME = "com.jxw.newyouer.activity.SpecialVideoActivity";
public static final String JXW_QUALITY_CLASS_NAME = "com.jxw.newyouer.activity.QualityActivity";
/*单词大讲堂*/
public static final String JXW_WORD_LECTURE_CLASS_NAME = "com.jxw.newyouer.activity.WordLectureActivity";
/*考前冲刺*/
public static final String JXW_EXAM_SPRINT_CLASS_NAME = "com.jxw.newyouer.activity.ExamSprintActivity";
/*同步辅导*/
public static final String JXW_TUTORING_PACKAGE_NAME = "com.jxw.online_study";
@@ -92,6 +97,10 @@ public class JxwPackageConfig {
public static final String JXW_YOUER_PACKAGE_NAME = "com.jxw.youer.video";
public static final String JXW_YOUER_CLASS_NAME = "com.jxw.youer.activity.MainActivity";
/*模拟考场*/
public static final String JXW_EXAMSYSTEM_NAME ="com.jxw.examsystem";
public static final String JXW_EXAMSYSTEM_CLASS ="com.jxw.examsystem.StartExamActivity";
public static final String JXW_EXAMSYSTEM_NAME = "com.jxw.examsystem";
public static final String JXW_EXAMSYSTEM_CLASS = "com.jxw.examsystem.StartExamActivity";
/*学情管理*/
public static final String JXW_USAGEDATE_NAME = "com.jxw.usagedate";
public static final String JXW_USAGEDATE_CLASS = "com.jxw.usagedate.ui.MainActivity";
}

View File

@@ -36,6 +36,8 @@ public class AppManager {
public static final String MANUAL_NAME = "com.zyos.manual";
public static final String SERVICE_NAME = "com.zyos.service";
private static final String SHOW_PACKAGE_KEY = "SHOW_PACKAGE_KEY";
public static final String BROWSER_PACKAGE_NAME = "com.uiui.zybrowser";
public static final String BROWSER_CLASS_NAME = "com.uiui.zybrowser.activity.main.MainActivity";
@SuppressLint("StaticFieldLeak")
private static AppManager sInstance;

View File

@@ -21,8 +21,10 @@ import com.uiui.zyos.config.CommonConfig;
import com.uiui.zyos.jxw.JxwPackageConfig;
import java.lang.reflect.Type;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Set;
import java.util.function.BiConsumer;
public class OpenApkUtils {
private static final String TAG = OpenApkUtils.class.getSimpleName();
@@ -90,6 +92,34 @@ public class OpenApkUtils {
return false;
}
public boolean openPackageWithMultiArgs(String packageName, String className, HashMap<String, String> args) {
if (!ApkUtils.isAvailable(mContext, packageName)) {
Toaster.show("应用未安装");
return false;
}
ComponentName cn = new ComponentName(packageName, className);
Intent intent = new Intent();
intent.setComponent(cn);
if (args != null) {
args.forEach(new BiConsumer<String, String>() {
@Override
public void accept(String s, String s2) {
intent.putExtra(s, s2);
}
});
}
intent.putExtra("index", 1);
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 refresh() {
String jsonString = mMMKV.decodeString(CommonConfig.CLOUD_LESSON_SETTINGS_KEY);
if (!TextUtils.isEmpty(jsonString)) {
@@ -294,6 +324,46 @@ public class OpenApkUtils {
}
}
public void openWordLecture() {
if (!checkActivation()) {
return;
}
String packageName = JxwPackageConfig.JXW_VIDEO_PACKAGE_NAME;
String className = JxwPackageConfig.JXW_WORD_LECTURE_CLASS_NAME;
HashMap<String, String> map = new HashMap<>();
map.put("gradeName", "一年级");
map.put("pressName", "人教版");
if (isCloudLessonMod(packageName)) {
if (openPackageWithMultiArgs(packageName, className, map)) {
sendRuningApp(packageName);
} else {
Toaster.show("打开失败:应用未安装");
}
} else {
Toaster.show("专注模式只允许使用指定应用");
}
}
public void openExamSprint() {
if (!checkActivation()) {
return;
}
String packageName = JxwPackageConfig.JXW_VIDEO_PACKAGE_NAME;
String className = JxwPackageConfig.JXW_EXAM_SPRINT_CLASS_NAME;
HashMap<String, String> map = new HashMap<>();
map.put("title", "中考第一轮复习");
map.put("subject", "数学");
if (isCloudLessonMod(packageName)) {
if (openPackageWithMultiArgs(packageName, className, map)) {
sendRuningApp(packageName);
} else {
Toaster.show("打开失败:应用未安装");
}
} else {
Toaster.show("专注模式只允许使用指定应用");
}
}
public boolean isNewAiApp() {
PackageManager pm = mContext.getPackageManager();
PackageInfo packageInfo = null;
@@ -311,7 +381,7 @@ public class OpenApkUtils {
} else {
appVersionCode = packageInfo.versionCode;
}
if (appVersionCode == 85) {
if (appVersionCode > 10) {
return false;
} else {
return true;

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB