version:1.0

fix:修复bug
update:
This commit is contained in:
2023-03-12 19:18:15 +08:00
parent 96d9f21b2b
commit eeaf2a8c08
23 changed files with 292 additions and 115 deletions

View File

@@ -17,8 +17,9 @@ android {
applicationId "com.uiui.zyappstore" applicationId "com.uiui.zyappstore"
minSdkVersion 26 minSdkVersion 26
targetSdkVersion 29 targetSdkVersion 29
versionCode 2
versionName "1.1" versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
@@ -45,23 +46,90 @@ android {
//签名 //签名
signingConfigs { signingConfigs {
mtk12 { MTK {
storeFile file("keystore/TeclastMTK12.jks") storeFile file("keystore/TeclastMTK12.jks")
storePassword "123456" storePassword "123456"
keyAlias "TeclastMTK12" keyAlias "TeclastMTK12"
keyPassword "123456" keyPassword "123456"
v2SigningEnabled false v2SigningEnabled false
} }
cube8183 {
storeFile file("keystore/TeclastMTK12.jks")
storePassword "123456"
keyAlias "TeclastMTK12"
keyPassword "123456"
v2SigningEnabled false
}
teclast8183 {
storeFile file("keystore/TeclastMTK12.jks")
storePassword "123456"
keyAlias "TeclastMTK12"
keyPassword "123456"
v2SigningEnabled false
}
zhanRui {
storeFile file("keystore/zhanxun.keystore")
storePassword "123456"
keyAlias "zhanxun"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled false
}
} }
buildTypes { buildTypes {
Cube8183Debug.initWith(debug)
Cube8183Debug {
debuggable true
versionNameSuffix "-debug"
buildConfigField "String", "platform", '"cube8183"'
signingConfig signingConfigs.cube8183
}
Cube8183Release.initWith(release)
Cube8183Release {
buildConfigField "String", "platform", '"cube8183"'
signingConfig signingConfigs.cube8183
}
Teclast8183Debug.initWith(debug)
Teclast8183Debug {
debuggable true
versionNameSuffix "-debug"
buildConfigField "String", "platform", '"teclast8183"'
signingConfig signingConfigs.teclast8183
}
Teclast8183Release.initWith(release)
Teclast8183Release {
buildConfigField "String", "platform", '"teclast8183"'
signingConfig signingConfigs.teclast8183
}
zhanRuiDebug.initWith(debug)
zhanRuiDebug {
debuggable true
versionNameSuffix "-debug"
buildConfigField "String", "platform", '"展锐"'
signingConfig signingConfigs.zhanRui
}
zhanRuiRelease.initWith(release)
zhanRuiRelease {
buildConfigField "String", "platform", '"展锐"'
signingConfig signingConfigs.zhanRui
}
debug { debug {
buildConfigField "String", "platform", '"TeclastMTK12"' buildConfigField "String", "platform", '"MTK"'
versionNameSuffix "-debug" versionNameSuffix "-debug"
minifyEnabled false minifyEnabled false
//Zipalign优化 //Zipalign优化
zipAlignEnabled true zipAlignEnabled true
signingConfig signingConfigs.mtk12 signingConfig signingConfigs.MTK
applicationVariants.all { variant -> applicationVariants.all { variant ->
variant.outputs.each { output -> variant.outputs.each { output ->
if (outputFile != null) { if (outputFile != null) {
@@ -72,7 +140,7 @@ android {
} }
} }
release { release {
buildConfigField "String", "platform", '"TeclastMTK12"' buildConfigField "String", "platform", '"MTK"'
//混淆 //混淆
minifyEnabled false minifyEnabled false
//Zipalign优化 //Zipalign优化
@@ -80,7 +148,7 @@ android {
//前一部分代表系统默认的android程序的混淆文件该文件已经包含了基本的混淆声明后一个文件是自己的定义混淆文件 //前一部分代表系统默认的android程序的混淆文件该文件已经包含了基本的混淆声明后一个文件是自己的定义混淆文件
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
//签名 //签名
signingConfig signingConfigs.mtk12 signingConfig signingConfigs.MTK
// 将release版本的包名重命名加上版本及日期 // 将release版本的包名重命名加上版本及日期
applicationVariants.all { variant -> applicationVariants.all { variant ->
variant.outputs.each { output -> variant.outputs.each { output ->
@@ -128,7 +196,7 @@ dependencies {
//动态权限框架 //动态权限框架
implementation 'com.hjq:xxpermissions:6.0' implementation 'com.hjq:xxpermissions:6.0'
//okhttp //okhttp
implementation 'com.squareup.okhttp3:okhttp:4.9.3' implementation 'com.squareup.okhttp3:okhttp:4.9.2'
//Retrofit //Retrofit
implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.9.0' implementation 'com.squareup.retrofit2:converter-gson:2.9.0'

Binary file not shown.

View File

@@ -39,6 +39,8 @@ import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import butterknife.BindView;
import butterknife.ButterKnife;
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers; import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers;
import io.reactivex.rxjava3.annotations.NonNull; import io.reactivex.rxjava3.annotations.NonNull;
import io.reactivex.rxjava3.core.Observer; import io.reactivex.rxjava3.core.Observer;
@@ -49,11 +51,17 @@ import io.reactivex.rxjava3.schedulers.Schedulers;
public class MainActivity extends BaseActivity { public class MainActivity extends BaseActivity {
private static final String TAG = MainActivity.class.getSimpleName(); private static final String TAG = MainActivity.class.getSimpleName();
private RelativeLayout search_layout; @BindView(R.id.search_layout)
private ImageView iv_download, iv_appicon; RelativeLayout search_layout;
private SlidingTabLayout mSlidingTabLayout; @BindView(R.id.iv_download)
private ViewPager mViewPager; ImageView iv_download;
private long exitTime = 0; @BindView(R.id.iv_appicon)
ImageView iv_appicon;
@BindView(R.id.main_sliding_tab_layout)
SlidingTabLayout mSlidingTabLayout;
@BindView(R.id.main_view_pager)
ViewPager mViewPager;
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
@@ -63,69 +71,47 @@ public class MainActivity extends BaseActivity {
starService(); starService();
} }
private void starService() {
startService(new Intent(this, GuardService.class));
startService(new Intent(this, StepService.class));
startService(new Intent(this, MainService.class));
startService(new Intent(this, DownloadService.class));
}
@Override @Override
protected int setLayoutResourceID() { protected int setLayoutResourceID() {
return R.layout.activity_main; return R.layout.activity_main;
} }
@Override
protected void onResume() {
super.onResume();
}
@Override
protected void onStart() {
super.onStart();
// getUserInfo();
}
@Override
public void onConfigurationChanged(@NonNull Configuration newConfig) {
super.onConfigurationChanged(newConfig);
Log.e(TAG, "onConfigurationChanged");
}
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
Log.e(TAG, "onSaveInstanceState");
}
@Override @Override
protected void initView() { protected void initView() {
iv_appicon = findViewById(R.id.iv_appicon); ButterKnife.bind(this);
iv_appicon.setOnClickListener(new View.OnClickListener() { iv_appicon.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
// startActivity(new Intent(MainActivity.this, AboutActivity.class)); // startActivity(new Intent(MainActivity.this, AboutActivity.class));
} }
}); });
iv_download = findViewById(R.id.iv_download);
iv_download.setOnClickListener(new View.OnClickListener() { iv_download.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View view) { public void onClick(View view) {
startActivity(new Intent(MainActivity.this, DownloadManagerActivity.class)); startActivity(new Intent(MainActivity.this, ManagerAppActivity.class));
} }
}); });
search_layout = findViewById(R.id.search_layout);
search_layout.setOnClickListener(new View.OnClickListener() { search_layout.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View view) { public void onClick(View view) {
startActivity(new Intent(MainActivity.this, SearcherActivity.class)); startActivity(new Intent(MainActivity.this, SearcherActivity.class));
} }
}); });
mSlidingTabLayout = findViewById(R.id.main_sliding_tab_layout);
mViewPager = findViewById(R.id.main_view_pager);
initTabLayout(); initTabLayout();
} }
@Override
protected void initData() {
// getAllAppPackageName();
}
private void starService() {
startService(new Intent(this, GuardService.class));
startService(new Intent(this, StepService.class));
startService(new Intent(this, MainService.class));
startService(new Intent(this, DownloadService.class));
}
private void initTabLayout() { private void initTabLayout() {
final List<Fragment> fragmentList = new ArrayList<>(); final List<Fragment> fragmentList = new ArrayList<>();
fragmentList.add(new FeaturedFragment()); fragmentList.add(new FeaturedFragment());
@@ -149,8 +135,26 @@ public class MainActivity extends BaseActivity {
} }
@Override @Override
protected void initData() { protected void onResume() {
// getAllAppPackageName(); super.onResume();
}
@Override
protected void onStart() {
super.onStart();
// getUserInfo();
}
@Override
public void onConfigurationChanged(@NonNull Configuration newConfig) {
super.onConfigurationChanged(newConfig);
Log.e(TAG, "onConfigurationChanged");
}
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
Log.e(TAG, "onSaveInstanceState");
} }
@Override @Override
@@ -211,9 +215,10 @@ public class MainActivity extends BaseActivity {
return false; return false;
} }
return super.onKeyDown(keyCode, event); return super.onKeyDown(keyCode, event);
} }
private long exitTime = 0;
public void exit() { public void exit() {
if ((System.currentTimeMillis() - exitTime) > 2000) { if ((System.currentTimeMillis() - exitTime) > 2000) {
ToastUtil.show("再按一次退出程序"); ToastUtil.show("再按一次退出程序");

View File

@@ -109,7 +109,7 @@ public class MoreAppActivity extends BaseActivity {
private void getAdminApp() { private void getAdminApp() {
NetInterfaceManager.getInstance() NetInterfaceManager.getInstance()
.getAdminAppObservable() .getAdminAppByClassObservable(2)
.subscribe(new Observer<BaseResponse<List<AppInfo>>>() { .subscribe(new Observer<BaseResponse<List<AppInfo>>>() {
@Override @Override
public void onSubscribe(Disposable d) { public void onSubscribe(Disposable d) {

View File

@@ -2,6 +2,8 @@ package com.uiui.zyappstore.adapter;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.provider.Settings;
import android.util.Log;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
@@ -28,6 +30,7 @@ import com.uiui.zyappstore.bean.GlideCircleWithBorder;
import com.uiui.zyappstore.utils.ApkUtils; import com.uiui.zyappstore.utils.ApkUtils;
import com.uiui.zyappstore.utils.FileUtils; import com.uiui.zyappstore.utils.FileUtils;
import com.uiui.zyappstore.utils.StorageUtils; import com.uiui.zyappstore.utils.StorageUtils;
import com.uiui.zyappstore.utils.ToastUtil;
import com.uiui.zyappstore.utils.Utils; import com.uiui.zyappstore.utils.Utils;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
@@ -134,6 +137,12 @@ public class AppAdapter extends RecyclerView.Adapter<AppAdapter.Holder> {
if (installed && !update) { if (installed && !update) {
ApkUtils.openApp(mContext, appInfo.getApp_package()); ApkUtils.openApp(mContext, appInfo.getApp_package());
} else { } else {
int is_storeinstall = Settings.Global.getInt(mContext.getContentResolver(), "setting_is_storeinstall", 0);
Log.e(TAG, "onClick: " + is_storeinstall);
if (is_storeinstall == 0) {
ToastUtil.show("应用市场已被禁止安装");
return;
}
Utils.addPackageToWhiteList(mContext, appInfo.getApp_package()); Utils.addPackageToWhiteList(mContext, appInfo.getApp_package());
DownloadEntity entity = Aria.download(this).getFirstDownloadEntity(appInfo.getApp_url()); DownloadEntity entity = Aria.download(this).getFirstDownloadEntity(appInfo.getApp_url());
if (null != entity) { if (null != entity) {

View File

@@ -216,7 +216,8 @@ public class FeaturedFragment extends LazyLoadFragment implements RefreshManager
cl_5.setOnClickListener(new View.OnClickListener() { cl_5.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
startActivity(new Intent(getActivity(), ManagerAppActivity.class)); // startActivity(new Intent(getActivity(), ManagerAppActivity.class));
openAppClass(5);
} }
}); });
tv_exclusive_app.setOnClickListener(new View.OnClickListener() { tv_exclusive_app.setOnClickListener(new View.OnClickListener() {
@@ -254,9 +255,10 @@ public class FeaturedFragment extends LazyLoadFragment implements RefreshManager
// } else { // } else {
// rv_popular.setLayoutManager(new LinearLayoutManager(mContext)); // rv_popular.setLayoutManager(new LinearLayoutManager(mContext));
// } // }
rv_popular.setAdapter(mPopularAppAdapter);
GridLayoutManager gridLayoutManager2 = new GridLayoutManager(mContext, 2); GridLayoutManager gridLayoutManager2 = new GridLayoutManager(mContext, 2);
rv_exclusive.setLayoutManager(gridLayoutManager2); rv_exclusive.setLayoutManager(gridLayoutManager2);
rv_popular.setAdapter(mPopularAppAdapter);
rv_exclusive.setAdapter(mExclusiveAppAdapter); rv_exclusive.setAdapter(mExclusiveAppAdapter);
} }
@@ -333,13 +335,13 @@ public class FeaturedFragment extends LazyLoadFragment implements RefreshManager
} }
synchronized private void initAPPData() { synchronized private void initAPPData() {
int setting_admin_app = Settings.System.getInt(mContext.getContentResolver(), "setting_admin_app", 1); // int setting_admin_app = Settings.System.getInt(mContext.getContentResolver(), "setting_admin_app", 1);
if (setting_admin_app == 0) { // if (setting_admin_app == 0) {
getAllAppInfo();
} else {
getAllAppInfo();
getAdminApp(); getAdminApp();
} // } else {
// getAllAppInfo();
// getAdminApp();
// }
getBanner(); getBanner();
getAppClass(); getAppClass();
} }
@@ -524,7 +526,7 @@ public class FeaturedFragment extends LazyLoadFragment implements RefreshManager
private void getAdminApp() { private void getAdminApp() {
NetInterfaceManager.getInstance() NetInterfaceManager.getInstance()
.getAdminAppObservable() .getAdminAppByClassObservable(2)
.subscribe(new Observer<BaseResponse<List<AppInfo>>>() { .subscribe(new Observer<BaseResponse<List<AppInfo>>>() {
@Override @Override
public void onSubscribe(Disposable d) { public void onSubscribe(Disposable d) {

View File

@@ -208,7 +208,9 @@ public class NetInterfaceManager {
set.add(JGYUtils.UMTK11Tag); set.add(JGYUtils.UMTK11Tag);
} else if (platform == JGYUtils.UZY12Platform) { } else if (platform == JGYUtils.UZY12Platform) {
set.add(JGYUtils.UZY12Tag); set.add(JGYUtils.UZY12Tag);
} else if (platform == JGYUtils.TeclastMTK12Platform) { } else if (platform == JGYUtils.Cube8183Platform) {
set.add(JGYUtils.Cube8183Tag);
}else if (platform == JGYUtils.Teclast8183Platform) {
set.add(JGYUtils.TeclastMTK12Tag); set.add(JGYUtils.TeclastMTK12Tag);
} }
}); });

View File

@@ -12,6 +12,7 @@ import android.graphics.drawable.Drawable;
import android.net.Uri; import android.net.Uri;
import android.os.Binder; import android.os.Binder;
import android.os.Build; import android.os.Build;
import android.provider.Settings;
import android.util.Log; import android.util.Log;
import android.view.View; import android.view.View;
import android.widget.Toast; import android.widget.Toast;
@@ -37,10 +38,12 @@ import java.util.ArrayList;
import java.util.Enumeration; import java.util.Enumeration;
import java.util.HashSet; import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.Set;
import java.util.zip.ZipEntry; import java.util.zip.ZipEntry;
import java.util.zip.ZipFile; import java.util.zip.ZipFile;
public class ApkUtils { public class ApkUtils {
private static final String TAG = ApkUtils.class.getSimpleName();
public static synchronized boolean getRootAhth() { public static synchronized boolean getRootAhth() {
Process process = null; Process process = null;
@@ -72,17 +75,13 @@ public class ApkUtils {
} }
} }
public static void openApp(Context context, View view) {
try {
Intent intent = context.getPackageManager().getLaunchIntentForPackage((String) view.getTag(R.string.download_btn_had));
context.startActivity(intent);
} catch (Exception e) {
Toast.makeText(context, R.string.open_app_fail, Toast.LENGTH_LONG).show();
}
return;
}
public static void openApp(Context context, String packageName) { public static void openApp(Context context, String packageName) {
int setting_other_appInstaller = Settings.Global.getInt(context.getContentResolver(), "setting_other_appInstaller", 0);
Log.e(TAG, "openApp: " + setting_other_appInstaller);
if (setting_other_appInstaller == 0) {
ToastUtil.show("已禁止应用打开");
return;
}
Intent intent = context.getPackageManager().getLaunchIntentForPackage(packageName); Intent intent = context.getPackageManager().getLaunchIntentForPackage(packageName);
if (intent != null) { if (intent != null) {
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
@@ -636,7 +635,7 @@ public class ApkUtils {
} }
} }
static HashSet<String> fuxiaoyingApp = new HashSet<String>() {{ private static final HashSet<String> fuxiaoyingApp = new HashSet<String>() {{
this.add("com.fuying.fuxiaoying"); this.add("com.fuying.fuxiaoying");
this.add("com.zhiduoke.fxy"); this.add("com.zhiduoke.fxy");
this.add("com.fuying.english"); this.add("com.fuying.english");
@@ -646,6 +645,54 @@ public class ApkUtils {
this.add("com.fuying.aobama.pad"); this.add("com.fuying.aobama.pad");
}}; }};
private static final Set<String> JXWAPP = new HashSet<String>() {{
this.add("com.uiui.zybrowser");
this.add("com.study.flashplayer");
this.add("com.jxw.laboratory");
this.add("com.safe.uiui");
this.add("software.ecenter.study");
this.add("com.iflytek.speechcloud");
this.add("com.jxw.online_study");
this.add("com.jxw.jinfangyici");
this.add("air.com.zhihuiyoujiao.flashplayer");
this.add("com.ll.ahschool");
this.add("com.jxw.classtable");
this.add("com.jxw.teacher.video");
this.add("com.jxw.game");
this.add("com.jxw.yyhb");
this.add("com.jxw.zncd");
this.add("com.jxw.dmxcy");
this.add("com.jxw.bishunguize");
this.add("com.jxw.characterlearning");
this.add("com.jxw.newyouer.video");
this.add("com.iflytek.cyber.iot.show.core");
this.add("com.jxw.huiben");
this.add("com.jxw.liancichengju");
this.add("com.jxw.singsound");
this.add("com.jxw.jxwcalculator");
this.add("com.uiui.zyappstore");
this.add("com.jxw.launcher");
this.add("com.jxw.jxwbook");
this.add("com.uiui.zysn");
this.add("com.jxw.question");
this.add("com.example.arithmeticformula");
this.add("com.jxw.schultegrid");
this.add("com.jxw.mskt.video");
this.add("com.jxw.wuweijidanci");
this.add("com.tech.translate");
this.add("com.jxw.studydigital");
this.add("com.jxw.englishsoundmark");
this.add("com.jxw.handwrite");
this.add("com.example.pianpangbushou");
this.add("com.jxw.learnchinesepinyin");
this.add("com.example.elementcycleapp");
this.add("com.jxw.examsystem");
this.add("com.jxw.letterstudynew");
this.add("com.jxw.yuwenxiezuo");
this.add("com.jxw.bihuamingcheng");
}};
synchronized public static List<LocalApp> getLocalApp(Context context) { synchronized public static List<LocalApp> getLocalApp(Context context) {
List<LocalApp> appList = new ArrayList<>(); List<LocalApp> appList = new ArrayList<>();
Intent intent = new Intent(Intent.ACTION_MAIN, null); Intent intent = new Intent(Intent.ACTION_MAIN, null);
@@ -669,6 +716,9 @@ public class ApkUtils {
continue; continue;
} }
bean.setPackageName(packageName); bean.setPackageName(packageName);
if (JXWAPP.contains(packageName)) {
bean.setCanUnintall(false);
}
Drawable icon = resolveInfoList.get(i).loadIcon(context.getPackageManager()); Drawable icon = resolveInfoList.get(i).loadIcon(context.getPackageManager());
bean.setIcon(icon); bean.setIcon(icon);
// if (forceAppSet.contains(packageName)) { // if (forceAppSet.contains(packageName)) {
@@ -753,9 +803,10 @@ public class ApkUtils {
public static HashSet<String> ownApp = new HashSet<String>() {{ public static HashSet<String> ownApp = new HashSet<String>() {{
this.add(BuildConfig.APPLICATION_ID); this.add(BuildConfig.APPLICATION_ID);
this.add("com.android.uiuios"); this.add("com.android.uiuios");
this.add("com.uiui.os"); this.add("com.uiui.zyos");
this.add("com.uiui.browser"); this.add("com.uiui.zybrowser");
this.add("com.uiui.sn"); this.add("com.uiui.zysn");
this.add("com.uiui.aios"); this.add("com.uiui.aios");
this.add("com.safe.uiui");
}}; }};
} }

View File

@@ -43,7 +43,8 @@ public class JGYUtils {
public static final int ZhanruiPlatform = 3; public static final int ZhanruiPlatform = 3;
public static final int UMTK11Platform = 4; public static final int UMTK11Platform = 4;
public static final int UZY12Platform = 7; public static final int UZY12Platform = 7;
public static final int TeclastMTK12Platform = 8; public static final int Cube8183Platform = 8;
public static final int Teclast8183Platform = 9;
public static final int UnknowPlatform = 0; public static final int UnknowPlatform = 0;
public static final String MTKTag = "MTK"; public static final String MTKTag = "MTK";
@@ -51,7 +52,8 @@ public class JGYUtils {
public static final String NewZhanruiTag = "新展锐"; public static final String NewZhanruiTag = "新展锐";
public static final String UMTK11Tag = "UMTK11"; public static final String UMTK11Tag = "UMTK11";
public static final String UZY12Tag = "UZY12"; public static final String UZY12Tag = "UZY12";
public static final String TeclastMTK12Tag = "TeclastMTK12"; public static final String Cube8183Tag = "cube8183";
public static final String TeclastMTK12Tag = "teclast8183";
private JGYUtils(Context context) { private JGYUtils(Context context) {
@@ -316,9 +318,12 @@ public class JGYUtils {
} else if (UZY12Tag.equalsIgnoreCase(platform)) { } else if (UZY12Tag.equalsIgnoreCase(platform)) {
Log.i(TAG, "checkAppPlatform: " + "UZY12"); Log.i(TAG, "checkAppPlatform: " + "UZY12");
return UZY12Platform; return UZY12Platform;
}else if (TeclastMTK12Tag.equalsIgnoreCase(platform)) { }else if (Cube8183Tag.equalsIgnoreCase(platform)) {
Log.i(TAG, "checkAppPlatform: " + "TeclastMTK12"); Log.i(TAG, "checkAppPlatform: " + "cube8183");
return TeclastMTK12Platform; return Cube8183Platform;
} else if (TeclastMTK12Tag.equalsIgnoreCase(platform)) {
Log.i(TAG, "checkAppPlatform: " + "teclast8183");
return Teclast8183Platform;
} else { } else {
Log.i(TAG, "checkAppPlatform: " + "没有数据"); Log.i(TAG, "checkAppPlatform: " + "没有数据");
return UnknowPlatform; return UnknowPlatform;
@@ -351,7 +356,9 @@ public class JGYUtils {
} else if (UZY12Tag.equalsIgnoreCase(platform)) { } else if (UZY12Tag.equalsIgnoreCase(platform)) {
getAppPlatformCallback.AppPlatform(UZY12Platform); getAppPlatformCallback.AppPlatform(UZY12Platform);
} else if (TeclastMTK12Tag.equalsIgnoreCase(platform)) { } else if (TeclastMTK12Tag.equalsIgnoreCase(platform)) {
getAppPlatformCallback.AppPlatform(TeclastMTK12Platform); getAppPlatformCallback.AppPlatform(Teclast8183Platform);
} else if (Cube8183Tag.equalsIgnoreCase(platform)) {
getAppPlatformCallback.AppPlatform(Cube8183Platform);
} else { } else {
getAppPlatformCallback.AppPlatform(UnknowPlatform); getAppPlatformCallback.AppPlatform(UnknowPlatform);
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 940 B

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -38,15 +38,14 @@
android:textStyle="bold" /> android:textStyle="bold" />
</LinearLayout> </LinearLayout>
<com.scwang.smartrefresh.layout.SmartRefreshLayout <com.scwang.smartrefresh.layout.SmartRefreshLayout
android:id="@+id/local_app_refresh_layout" android:id="@+id/local_app_refresh_layout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="0dp" android:layout_height="0dp"
android:background="@color/white"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
android:background="@color/white"
app:layout_constraintTop_toBottomOf="@+id/linearLayout2"> app:layout_constraintTop_toBottomOf="@+id/linearLayout2">
<RelativeLayout <RelativeLayout
@@ -71,7 +70,5 @@
</ImageView> </ImageView>
</RelativeLayout> </RelativeLayout>
</com.scwang.smartrefresh.layout.SmartRefreshLayout> </com.scwang.smartrefresh.layout.SmartRefreshLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -6,16 +6,18 @@
android:layout_height="match_parent" android:layout_height="match_parent"
tools:context=".activity.MainActivity"> tools:context=".activity.MainActivity">
<LinearLayout <androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent">
android:orientation="vertical">
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:id="@+id/linearLayout4"
android:layout_width="0dp"
android:layout_height="@dimen/dp_24" android:layout_height="@dimen/dp_24"
android:layout_marginBottom="@dimen/dp_4" android:orientation="horizontal"
android:orientation="horizontal"> app:layout_constraintEnd_toStartOf="@+id/iv_download"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<ImageView <ImageView
android:id="@+id/iv_appicon" android:id="@+id/iv_appicon"
@@ -70,7 +72,6 @@
</RelativeLayout> </RelativeLayout>
<ImageView <ImageView
android:id="@+id/iv_download"
android:layout_width="30dp" android:layout_width="30dp"
android:layout_height="30dp" android:layout_height="30dp"
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
@@ -79,12 +80,25 @@
android:visibility="gone" /> android:visibility="gone" />
</LinearLayout> </LinearLayout>
<ImageView
android:id="@+id/iv_download"
android:layout_width="@dimen/dp_12"
android:layout_height="@dimen/dp_12"
android:layout_marginEnd="@dimen/dp_8"
android:adjustViewBounds="true"
android:scaleType="centerInside"
android:src="@drawable/icon_download_task"
app:layout_constraintBottom_toBottomOf="@+id/linearLayout4"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@+id/linearLayout4" />
<com.flyco.tablayout.SlidingTabLayout <com.flyco.tablayout.SlidingTabLayout
android:id="@+id/main_sliding_tab_layout" android:id="@+id/main_sliding_tab_layout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="@dimen/dp_20" android:layout_height="@dimen/dp_20"
android:background="@color/white" android:background="@color/white"
android:visibility="gone" android:visibility="gone"
app:layout_constraintTop_toBottomOf="@+id/linearLayout4"
app:tl_indicator_style="TRIANGLE" app:tl_indicator_style="TRIANGLE"
app:tl_tab_space_equal="true" app:tl_tab_space_equal="true"
app:tl_textBold="SELECT" app:tl_textBold="SELECT"
@@ -98,6 +112,10 @@
android:layout_height="0dp" android:layout_height="0dp"
android:layout_weight="1" android:layout_weight="1"
android:background="@color/white" android:background="@color/white"
android:overScrollMode="never" /> android:overScrollMode="never"
</LinearLayout> app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/main_sliding_tab_layout" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -9,7 +9,7 @@
android:id="@+id/featured_refresh_layout" android:id="@+id/featured_refresh_layout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@color/adapter_selector_default" android:background="@color/colorPrimary"
app:srlAccentColor="@color/colorAccent" app:srlAccentColor="@color/colorAccent"
app:srlPrimaryColor="@color/colorPrimary"> app:srlPrimaryColor="@color/colorPrimary">

View File

@@ -6,16 +6,18 @@
android:layout_height="match_parent" android:layout_height="match_parent"
tools:context=".activity.MainActivity"> tools:context=".activity.MainActivity">
<LinearLayout <androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent">
android:orientation="vertical">
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:id="@+id/linearLayout4"
android:layout_width="0dp"
android:layout_height="@dimen/dp_24" android:layout_height="@dimen/dp_24"
android:layout_marginBottom="@dimen/dp_4" android:orientation="horizontal"
android:orientation="horizontal"> app:layout_constraintEnd_toStartOf="@+id/iv_download"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<ImageView <ImageView
android:id="@+id/iv_appicon" android:id="@+id/iv_appicon"
@@ -70,7 +72,6 @@
</RelativeLayout> </RelativeLayout>
<ImageView <ImageView
android:id="@+id/iv_download"
android:layout_width="30dp" android:layout_width="30dp"
android:layout_height="30dp" android:layout_height="30dp"
android:layout_gravity="center_vertical" android:layout_gravity="center_vertical"
@@ -79,12 +80,25 @@
android:visibility="gone" /> android:visibility="gone" />
</LinearLayout> </LinearLayout>
<ImageView
android:id="@+id/iv_download"
android:layout_width="@dimen/dp_12"
android:layout_height="@dimen/dp_12"
android:layout_marginEnd="@dimen/dp_8"
android:adjustViewBounds="true"
android:scaleType="centerInside"
android:src="@drawable/icon_download_task"
app:layout_constraintBottom_toBottomOf="@+id/linearLayout4"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@+id/linearLayout4" />
<com.flyco.tablayout.SlidingTabLayout <com.flyco.tablayout.SlidingTabLayout
android:id="@+id/main_sliding_tab_layout" android:id="@+id/main_sliding_tab_layout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="@dimen/dp_20" android:layout_height="@dimen/dp_20"
android:background="@color/white" android:background="@color/white"
android:visibility="gone" android:visibility="gone"
app:layout_constraintTop_toBottomOf="@+id/linearLayout4"
app:tl_indicator_style="TRIANGLE" app:tl_indicator_style="TRIANGLE"
app:tl_tab_space_equal="true" app:tl_tab_space_equal="true"
app:tl_textBold="SELECT" app:tl_textBold="SELECT"
@@ -98,6 +112,10 @@
android:layout_height="0dp" android:layout_height="0dp"
android:layout_weight="1" android:layout_weight="1"
android:background="@color/white" android:background="@color/white"
android:overScrollMode="never" /> android:overScrollMode="never"
</LinearLayout> app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/main_sliding_tab_layout" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -9,7 +9,7 @@
android:id="@+id/featured_refresh_layout" android:id="@+id/featured_refresh_layout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@color/adapter_selector_default" android:background="@color/colorPrimary"
app:srlAccentColor="@color/colorAccent" app:srlAccentColor="@color/colorAccent"
app:srlPrimaryColor="@color/colorPrimary"> app:srlPrimaryColor="@color/colorPrimary">

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<color name="colorPrimary">#efefef</color> <color name="colorPrimary">#f6f6f6</color>
<color name="colorPrimaryDark">#303F9F</color> <color name="colorPrimaryDark">#303F9F</color>
<color name="colorAccent">#4880ff</color> <color name="colorAccent">#4880ff</color>
<!-- <color name="colorPrimary">#008577</color>--> <!-- <color name="colorPrimary">#008577</color>-->
@@ -20,7 +20,7 @@
<color name="search">#FFFFFF</color> <color name="search">#FFFFFF</color>
<color name="red">#d64743</color> <color name="red">#d64743</color>
<color name="blue">#00a0e9</color> <color name="blue">#00a0e9</color>
<color name="adapter_selector_default">#e8e7e7</color> <color name="adapter_selector_default">#f3f0f0</color>
<color name="activation_color">#4880ff</color> <color name="activation_color">#4880ff</color>
</resources> </resources>

View File

@@ -12,10 +12,10 @@
<string name="popular_recommendation">热门推荐</string> <string name="popular_recommendation">热门推荐</string>
<string name="more_app">更多…</string> <string name="more_app">更多…</string>
<string name="class_shopping">购物</string> <string name="class_shopping">热门推荐</string>
<string name="class_popular">热门</string> <string name="class_popular">在线学习</string>
<string name="class_health">养生</string> <string name="class_health">学霸必备</string>
<string name="class_video">影音</string> <string name="class_video">偏科助手</string>
<string name="class_entertainment">娱乐</string> <string name="class_entertainment">基础工具</string>
<string name="class_manage">管理</string> <string name="class_manage">学习软件</string>
</resources> </resources>