version:1.1.8

fix:
update:优化禁用
This commit is contained in:
2023-04-04 18:17:30 +08:00
parent ccf45273f7
commit 8b98116d87
14 changed files with 135 additions and 38 deletions

View File

@@ -254,7 +254,7 @@ public class MainActivity extends BaseActivity implements MainContact.MainView,
@Override
public void onConnected() {
Log.e(TAG, "onConnected: ");
RemoteManager.getInstance().setDefaultDesktop();
RemoteManager.getInstance().setDefaultDesktop(BuildConfig.APPLICATION_ID);
}
public static void toggleNotificationListenerService(Context context) {

View File

@@ -2,6 +2,7 @@ package com.uiui.zyos.adapter;
import android.content.Context;
import android.graphics.drawable.Drawable;
import android.provider.Settings;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
@@ -15,11 +16,13 @@ import androidx.recyclerview.widget.RecyclerView;
import com.uiui.zyos.R;
import com.uiui.zyos.bean.DesktopIcon;
import com.uiui.zyos.config.CommonConfig;
import com.uiui.zyos.utils.ApkUtils;
import com.uiui.zyos.utils.AppUsedTimeUtils;
import com.uiui.zyos.utils.BitmapUtils;
import com.uiui.zyos.utils.IconUtils;
import com.uiui.zyos.utils.OpenApkUtils;
import com.uiui.zyos.utils.ToastUtil;
import java.util.ArrayList;
import java.util.List;
@@ -62,7 +65,14 @@ public class AppAdapter extends RecyclerView.Adapter<AppAdapter.AppHolder> {
holder.root.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
OpenApkUtils.getInstance().openApp(desktopIcon.getPackageName(), desktopIcon.getClassName());
int setting_other_appInstaller = Settings.Global.getInt(mContext.getContentResolver(), CommonConfig.SETTING_OTHER_APPINSTALLER_KEY, 1);
if (setting_other_appInstaller == 0
&& !ApkUtils.isSystemApp(mContext, desktopIcon.getPackageName()
)) {
ToastUtil.show("已禁止应用打开");
} else {
OpenApkUtils.getInstance().openApp(desktopIcon.getPackageName(), desktopIcon.getClassName());
}
}
});
}

View File

@@ -10,17 +10,22 @@ public class CommonConfig {
/*是否激活接口请求缓存*/
public static final String ACTIVATIONBEAN_KEY = "UIUI_ACTIVATIONBEAN_KEY";
public static final String ACTIVATIONBEAN_KEY = "IFLYTEK_UIUI_ACTIVATIONBEAN_KEY";
/*是否激活*/
public static final String UIUI_ACTIVATION_KEY = "uiui_activation";
public static final String UIUI_ACTIVATION_KEY = "iflytek_uiui_activation";
/*激活码类型*/
public static final String UIUI_CODE_TYPE_KEY = "uiui_code_type";
public static final String UIUI_CODE_TYPE_KEY = "iflytek_uiui_code_type";
/*体验到期时间戳*/
public static final String UIUI_EXPIRE_TIME_KEY = "uiui_expire_time";
public static final String UIUI_EXPIRE_TIME_KEY = "iflytek_uiui_expire_time";
/*是否显示返回Android按钮*/
public static final String UIUI_RETURN_ANDROID_KEY = "iflytek_uiui_is_return_android";
public static final String MAP_LOCATION_JSON_KEY = "MAPLOCATION_JSON_STRING";
public static final String MAP_LONGITUDE_KEY = "map_longitude_key";
public static final String MAP_LATITUDE_KEY = "map_latitude_key";
public static final String MAP_ADDRESS_KEY = "map_address_key";
public static final String MAP_ERROR_KEY = "map_error_key";
public static final String SETTING_OTHER_APPINSTALLER_KEY = "setting_other_appInstaller";
}

View File

@@ -37,7 +37,6 @@ import com.uiui.zyos.config.CommonConfig;
import com.uiui.zyos.manager.RemoteManager;
import com.uiui.zyos.utils.ApkUtils;
import com.uiui.zyos.utils.TimeUtils;
import com.uiui.zyos.utils.ToastUtil;
import com.uiui.zyos.view.RecyclerViewSpacesItemDecoration;
import java.util.ArrayList;
@@ -60,6 +59,8 @@ public class UserFragment extends BaseFragment implements UserContact.UserView {
TextView tv_name;
@BindView(R.id.tv_grade)
TextView tv_grade;
@BindView(R.id.tv_exit)
TextView tv_exit;
@BindView(R.id.iv_speaker)
ImageView iv_speaker;
@BindView(R.id.tv_notification)
@@ -188,7 +189,7 @@ public class UserFragment extends BaseFragment implements UserContact.UserView {
registerOwnReceiver();
String name = mMMKV.decodeString("USERINFO_NAME", "");
if (TextUtils.isEmpty(name)) {
tv_name.setText(getString(R.string.default_name));
tv_name.setText(getString(R.string.default_nickname));
} else {
tv_name.setText(name);
}
@@ -205,12 +206,18 @@ public class UserFragment extends BaseFragment implements UserContact.UserView {
cl_activation.setVisibility(View.GONE);
cl_app.setVisibility(View.VISIBLE);
}
int is_activation = Settings.Global.getInt(mContext.getContentResolver(), CommonConfig.UIUI_ACTIVATION_KEY, 0);
if (is_activation != 1) {
tv_activation.setVisibility(View.VISIBLE);
} else {
tv_activation.setVisibility(View.GONE);
}
setButtonVisibility();
tv_exit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
RemoteManager.getInstance().setDefaultDesktop(ApkUtils.ANDROID_LAUNCHER3_PACKAGE_NAME);
if (!ApkUtils.openPackage(mContext, ApkUtils.ANDROID_LAUNCHER3_PACKAGE_NAME)) {
ApkUtils.gotoLauncher(mContext);
}
mContext.finish();
System.exit(0);
}
});
tv_activation.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
@@ -243,6 +250,22 @@ public class UserFragment extends BaseFragment implements UserContact.UserView {
rv_app.setAdapter(mAppAdapter);
}
private void setButtonVisibility(){
int is_activation = Settings.Global.getInt(mContext.getContentResolver(), CommonConfig.UIUI_ACTIVATION_KEY, 0);
if (is_activation != 1) {
tv_exit.setVisibility(View.VISIBLE);
tv_activation.setVisibility(View.VISIBLE);
} else {
int isReturnAndroid = Settings.Global.getInt(mContext.getContentResolver(), CommonConfig.UIUI_RETURN_ANDROID_KEY, 0);
if (isReturnAndroid == 0) {
tv_exit.setVisibility(View.INVISIBLE);
} else {
tv_exit.setVisibility(View.VISIBLE);
}
tv_activation.setVisibility(View.GONE);
}
}
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
@@ -277,7 +300,7 @@ public class UserFragment extends BaseFragment implements UserContact.UserView {
String name = snInfo.getSn_name();
String grade = snInfo.getGrade();
if (TextUtils.isEmpty(name)) {
tv_name.setText(getString(R.string.default_name));
tv_name.setText(getString(R.string.default_nickname));
} else {
tv_name.setText(name);
}
@@ -417,6 +440,7 @@ public class UserFragment extends BaseFragment implements UserContact.UserView {
Log.e("RefreshReceiver", "onReceive: " + action);
if (ACTION_REFRESH_BINDING_STATUS.equals(action)) {
mPresenter.getSnInfo();
setButtonVisibility();
}
}
}

View File

@@ -297,9 +297,9 @@ public class RemoteManager {
}
}
public void setDefaultDesktop() {
public void setDefaultDesktop(String pkg) {
try {
mGetInfoInterface.setDefaultLauncher(BuildConfig.APPLICATION_ID);
mGetInfoInterface.setDefaultLauncher(pkg);
} catch (RemoteException e) {
Log.e(TAG, "setDefaultDesktop: " + e.getMessage());
e.printStackTrace();

View File

@@ -20,6 +20,7 @@ import androidx.annotation.RequiresApi;
import com.uiui.zyos.BuildConfig;
import com.uiui.zyos.R;
import com.uiui.zyos.bean.DesktopIcon;
import com.uiui.zyos.config.CommonConfig;
import com.uiui.zyos.receiver.InstallResultReceiver;
import java.io.File;
@@ -57,13 +58,23 @@ public class ApkUtils {
this.add("com.android.uiuios");
this.add("com.uiui.os");
this.add("com.uiui.health");
this.add("com.uiui.appstore");
this.add("com.tencent.android.qqdownloader");
this.add("com.alldocube.store");
this.add("com.joytv.live");
this.add("com.iflytek.speechcloud");
this.add("com.safe.uiui");
this.add("com.uiuios.aios");
this.add("com.uiuios.sn");
this.add("com.uiuios.appstore");
this.add("com.uiuios.browser");
this.add("com.uiui.aios");
this.add("com.uiui.sn");
this.add("com.uiui.appstore");
this.add("com.uiui.browser");
this.add("com.teclast.zyos");
this.add("com.teclast.zy");
this.add("com.teclast.zyappstore");
this.add("com.teclast.zybrowser");
}};
private static HashSet<String> excludeClassName = new HashSet<String>() {{
@@ -96,6 +107,10 @@ public class ApkUtils {
private static HashSet<String> allHintPackage = new HashSet<String>() {{
this.add("com.android.uiuios");
}};
public static final String ANDROID_LAUNCHER3_PACKAGE_NAME = "com.android.launcher3";
public static final String ANDROID_LAUNCHER3_CLASS_NAME = "com.android.launcher3.Launcher";
private static String TAG = ApkUtils.class.getSimpleName();
public static ArrayList<ApplicationInfo> getSystemApp(Context context) {
@@ -181,7 +196,7 @@ public class ApkUtils {
if (!TextUtils.isEmpty(appListString)) {
packageList = new ArrayList<>(Arrays.asList(appListString.split(",")));
}
int setting_other_appInstaller = Settings.Global.getInt(context.getContentResolver(), "setting_other_appInstaller", 1);
int setting_other_appInstaller = Settings.Global.getInt(context.getContentResolver(), CommonConfig.SETTING_OTHER_APPINSTALLER_KEY, 1);
for (ResolveInfo resolveInfo : resolveinfoList) {
String pkg = resolveInfo.activityInfo.packageName;
if (appIsDisable(context, pkg)) {
@@ -194,15 +209,15 @@ public class ApkUtils {
// resolveInfos.add(resolveInfo);
// }
} else {
if (setting_other_appInstaller == 0) {//不显示自己安装的
if (packageList.contains(pkg)) {
resolveInfos.add(resolveInfo);
}
} else {
// if (setting_other_appInstaller == 0) {//不显示自己安装的
// if (packageList.contains(pkg)) {
// resolveInfos.add(resolveInfo);
// }
// } else {
if (allowPackages.contains(pkg) && !excludePackageName.contains(pkg)) {
resolveInfos.add(resolveInfo);
}
}
// }
}
}
if (Settings.Global.getInt(context.getContentResolver(), "is_activity", 0) == 0) {
@@ -558,4 +573,11 @@ public class ApkUtils {
public static int getUserId(int uid) {
return uid / PER_USER_RANGE;
}
public static void gotoLauncher(Context context) {
Intent i = new Intent(Intent.ACTION_MAIN);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); //android123提示如果是服务里调用必须加入new task标识
i.addCategory(Intent.CATEGORY_HOME);
context.startActivity(i);
}
}