1.2.8 增加上传平台

This commit is contained in:
2023-12-21 10:18:04 +08:00
parent b5308a3d68
commit ccf5f136ba
11 changed files with 168 additions and 162 deletions

View File

@@ -1,26 +1,9 @@
apply plugin: 'com.android.application'
static String getBuildConfigFieldValue(def variant, def fiedName) {
def properties = variant.productFlavors[0].properties
def name = properties.get("name")
if (name != variant.flavorName) {
return ""
}
def configs = properties.get("buildConfigFields")
def address = null
for (Map.Entry<String, Object> item : configs) {
def key = item.key
if (key == fiedName) {
address = item.value
}
}
if (address == null) return ""
def field = address.getClass().getDeclaredField("value")
field.setAccessible(true)
return field.get(address).toString().replace("\"", "")
static def appName() {
return "小酷守护"
}
static def releaseTime() {
return new Date().format("yyyyMMdd_HHmmss", TimeZone.getDefault())
}
@@ -30,9 +13,12 @@ android {
buildToolsVersion "29.0.3"
defaultConfig {
applicationId "com.uiuipad.find"
minSdkVersion 24
targetSdkVersion 29
versionCode 29
versionName "1.2.8"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
@@ -43,6 +29,12 @@ android {
abiFilters 'armeabi-v7a', 'arm64-v8a', "x86"
// 还可以添加 'armeabi', 'x86', 'x86_64', 'mips', 'mips64'
}
buildConfigField "String", "app_name", '"小酷守护"'
manifestPlaceholders = [
ALIPUSH_KEY : "333898263",
ALIPUSH_SECRET: "e1b374229ffe479eb34ba74432b7e454",
]
}
lintOptions {
@@ -61,57 +53,6 @@ android {
targetCompatibility JavaVersion.VERSION_1_8
}
//多版本
productFlavors {
kuxin {
flavorDimensions "default"
applicationId "com.uiuipad.find"
versionCode 27
versionName "1.2.6"
buildConfigField "String", "app_name", '"小酷守护"'
manifestPlaceholders = [
ALIPUSH_KEY : "333898263",
ALIPUSH_SECRET: "e1b374229ffe479eb34ba74432b7e454",
]
}
aiKuxin {
flavorDimensions "default"
applicationId "com.aole.safe"
versionCode 1
versionName "1.0.0"
buildConfigField "String", "app_name", '"守护中心"'
manifestPlaceholders = [
ALIPUSH_KEY : "333982424",
ALIPUSH_SECRET: "c831992e2de743dcad66f5ec420798a4",
]
}
aigo {
flavorDimensions "default"
applicationId "com.safeos.ae"
versionCode 1
versionName "1.0.0"
buildConfigField "String", "app_name", '"安全守护"'
manifestPlaceholders = [
ALIPUSH_KEY : "333982410",
ALIPUSH_SECRET: "6d8785a73d904055ac00f84d83400be4",
]
}
phone {
flavorDimensions "default"
applicationId "com.dangsafe.kf"
versionCode 1
versionName "1.0.0"
buildConfigField "String", "app_name", '"时间守护"'
manifestPlaceholders = [
ALIPUSH_KEY : "333982833",
ALIPUSH_SECRET: "67a5bf10515947459c04fc000367feca",
]
}
}
//签名
signingConfigs {
//iPlay50 mini,iPlay50 android13 共用签名
@@ -165,65 +106,65 @@ android {
v2SigningEnabled false
}
UnisocS6688 {
storeFile file("keystore/UnisocS6688Userdebug.jks")
storePassword "123456"
keyAlias "unisocs6688userdebug"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
Aigo1071 {
storeFile file("keystore/Aigo1071.jks")
storePassword "123456"
keyAlias "aigo1071"
keyPassword "123456"
v1SigningEnabled true
v2SigningEnabled true
}
// UnisocS6688 {
// storeFile file("keystore/UnisocS6688Userdebug.jks")
// storePassword "123456"
// keyAlias "unisocs6688userdebug"
// keyPassword "123456"
// v1SigningEnabled true
// v2SigningEnabled true
// }
//
// Aigo1071 {
// storeFile file("keystore/Aigo1071.jks")
// storePassword "123456"
// keyAlias "aigo1071"
// keyPassword "123456"
// v1SigningEnabled true
// v2SigningEnabled true
// }
}
buildTypes {
Aigo1071Debug.initWith(debug)
Aigo1071Debug {
versionNameSuffix "-debug"
debuggable true
signingConfig signingConfigs.Aigo1071
buildConfigField "String", "platform", '"W8183"'
manifestPlaceholders = [
Baidu_AK: "YCmfZSw54O992lChzS3c4roYioitT54h"
]
}
Aigo1071Release.initWith(release)
Aigo1071Release {
signingConfig signingConfigs.Aigo1071
buildConfigField "String", "platform", '"W8183"'
manifestPlaceholders = [
Baidu_AK: "YCmfZSw54O992lChzS3c4roYioitT54h"
]
}
UnisocS6688Debug.initWith(debug)
UnisocS6688Debug {
versionNameSuffix "-debug"
debuggable true
signingConfig signingConfigs.UnisocS6688
buildConfigField "String", "platform", '"S6688"'
manifestPlaceholders = [
Baidu_AK: "YCmfZSw54O992lChzS3c4roYioitT54h"
]
}
UnisocS6688Release.initWith(release)
UnisocS6688Release {
signingConfig signingConfigs.UnisocS6688
buildConfigField "String", "platform", '"S6688"'
manifestPlaceholders = [
Baidu_AK: "YCmfZSw54O992lChzS3c4roYioitT54h"
]
}
// Aigo1071Debug.initWith(debug)
// Aigo1071Debug {
// versionNameSuffix "-debug"
// debuggable true
// signingConfig signingConfigs.Aigo1071
// buildConfigField "String", "platform", '"W8183"'
// manifestPlaceholders = [
// Baidu_AK: "YCmfZSw54O992lChzS3c4roYioitT54h"
// ]
// }
//
// Aigo1071Release.initWith(release)
// Aigo1071Release {
// signingConfig signingConfigs.Aigo1071
// buildConfigField "String", "platform", '"W8183"'
// manifestPlaceholders = [
// Baidu_AK: "YCmfZSw54O992lChzS3c4roYioitT54h"
// ]
// }
//
// UnisocS6688Debug.initWith(debug)
// UnisocS6688Debug {
// versionNameSuffix "-debug"
// debuggable true
// signingConfig signingConfigs.UnisocS6688
// buildConfigField "String", "platform", '"S6688"'
// manifestPlaceholders = [
// Baidu_AK: "YCmfZSw54O992lChzS3c4roYioitT54h"
// ]
// }
//
// UnisocS6688Release.initWith(release)
// UnisocS6688Release {
// signingConfig signingConfigs.UnisocS6688
// buildConfigField "String", "platform", '"S6688"'
// manifestPlaceholders = [
// Baidu_AK: "YCmfZSw54O992lChzS3c4roYioitT54h"
// ]
// }
teclast8183Debug.initWith(debug)
teclast8183Debug {
@@ -330,7 +271,7 @@ android {
applicationVariants.all { variant ->
variant.outputs.each { output ->
if (outputFile != null) {
def fileName = "${getBuildConfigFieldValue(variant, "app_name")}-${variant.versionCode}-V${variant.versionName}-${releaseTime()}-${buildType.name}.apk"
def fileName = "${appName()}-${variant.versionCode}-V${variant.versionName}-${releaseTime()}-${buildType.name}.apk"
output.outputFileName = fileName
}
}
@@ -355,7 +296,7 @@ android {
variant.outputs.each { output ->
def outputFile = ""
if (outputFile != null) {
def fileName = "${getBuildConfigFieldValue(variant, "app_name")}-${variant.versionCode}-V${variant.versionName}-${releaseTime()}-${buildType.name}.apk"
def fileName = "${appName()}-${variant.versionCode}-V${variant.versionName}-${releaseTime()}-${buildType.name}.apk"
output.outputFileName = new File(outputFile, fileName)
}
}
@@ -363,29 +304,6 @@ android {
}
}
sourceSets {
kuxin {
res {
srcDirs 'src/res'
}
}
aiKuxin {
res {
srcDirs 'src/aiKuxin/res'
}
}
aigo {
res {
srcDirs 'src/aigo/res'
}
}
phone {
res {
srcDirs 'src/phone/res'
}
}
}
externalNativeBuild {
cmake {
path file('CMakeLists.txt')

View File

@@ -1,3 +0,0 @@
<resources>
<string name="app_name">守护中心</string>
</resources>

View File

@@ -1,3 +0,0 @@
<resources>
<string name="app_name">安全守护</string>
</resources>

View File

@@ -21,10 +21,12 @@ import com.uiuipad.find.BuildConfig;
import com.uiuipad.find.R;
import com.uiuipad.find.base.BaseActivity;
import com.uiuipad.find.bean.kuxin.SnInfo;
import com.uiuipad.find.network.NetInterfaceManager;
import com.uiuipad.find.service.ManagerService;
import com.uiuipad.find.service.SocketService;
import com.uiuipad.find.service.main.MainService;
import com.uiuipad.find.util.ApkUtils;
import com.uiuipad.find.util.ModelUtils;
import com.uiuipad.find.util.TimeUtils;
import com.uiuipad.find.util.ToastUtil;
import com.uiuipad.find.util.Utils;
@@ -176,6 +178,7 @@ public class MainActivity extends BaseActivity implements MainAContact.MainView,
@Override
public void initData() {
NetInterfaceManager.getInstance().bindPlatform(ModelUtils.getInstance().getModelId(BuildConfig.platform));
mPresenter.getQrCode();
}

View File

@@ -43,6 +43,7 @@ import com.uiuipad.find.network.api.kuxin.manage.RemoveLockScreenApi;
import com.uiuipad.find.network.api.kuxin.manage.SnSettingApi;
import com.uiuipad.find.network.api.kuxin.manage.UpdateSnLocationApi;
import com.uiuipad.find.network.api.kuxin.manage.UploadSnScreenshotApi;
import com.uiuipad.find.network.api.kuxin.sn.BindPlatformApi;
import com.uiuipad.find.network.api.kuxin.sn.SnConfirmBindApi;
import com.uiuipad.find.network.api.kuxin.sn.SnInfoApi;
import com.uiuipad.find.network.api.kuxin.sn.UpdateSnInfoApi;
@@ -336,6 +337,15 @@ public class NetInterfaceManager {
.observeOn(AndroidSchedulers.mainThread());
}
public Observable<BaseResponse> getBindPlatformObservable(int platformId) {
return mRetrofit.create(BindPlatformApi.class)
.bindPlatform(Utils.getSerial(), platformId)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread());
}
public Observable<JxwResponse> getAuthorizedControl(RequestBody body) {
return mJxwRetrofit.create(AuthorizedApi.class)
@@ -948,4 +958,31 @@ public class NetInterfaceManager {
}
});
}
public void bindPlatform(int platformId) {
Log.e(TAG, "bindPlatform: platformId = " + platformId);
getBindPlatformObservable(platformId)
.subscribe(new Observer<BaseResponse>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
Log.e("bindPlatform", "onSubscribe: ");
}
@Override
public void onNext(@NonNull BaseResponse baseResponse) {
Log.e("bindPlatform", "onNext: " + baseResponse);
}
@Override
public void onError(@NonNull Throwable e) {
Log.e("bindPlatform", "onError: " + e.getMessage());
}
@Override
public void onComplete() {
Log.e("bindPlatform", "onComplete: ");
}
});
}
}

View File

@@ -20,7 +20,8 @@ public class UrlAddress {
public static final String UPDATE_SN_INFO = "equipment/sn/updateSnInfo";
/*获取绑定信息*/
public static final String GET_SN_INFO = "equipment/sn/getSnInfo";
/*sn绑定机型平台*/
public static final String BIND_PLATFORM = "equipment/sn/bind-platform";
/*
* 管控

View File

@@ -0,0 +1,18 @@
package com.uiuipad.find.network.api.kuxin.sn;
import com.uiuipad.find.bean.kuxin.BaseResponse;
import com.uiuipad.find.network.UrlAddress;
import io.reactivex.rxjava3.core.Observable;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.POST;
public interface BindPlatformApi {
@FormUrlEncoded
@POST(UrlAddress.BIND_PLATFORM)
Observable<BaseResponse> bindPlatform(
@Field("sn") String sn,
@Field("platform_id") int platformId
);
}

View File

@@ -24,6 +24,7 @@ import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.reflect.TypeToken;
import com.tencent.mmkv.MMKV;
import com.uiuipad.find.BuildConfig;
import com.uiuipad.find.activity.AudioActivity;
import com.uiuipad.find.activity.NoticeActivity;
import com.uiuipad.find.bean.kuxin.AppInfo;
@@ -203,7 +204,9 @@ public class PushManager {
break;
case DEVICE_REBOOT:
ToastUtil.debugShow("收到管控:设备重启");
ControlUtils.rebootDevices(mContext);
if (!BuildConfig.DEBUG) {
ControlUtils.rebootDevices(mContext);
}
break;
case DEVICE_CLEAR:
ToastUtil.debugShow("收到管控:一键加速");

View File

@@ -32,6 +32,7 @@ import com.trello.rxlifecycle4.LifecycleTransformer;
import com.trello.rxlifecycle4.RxLifecycle;
import com.trello.rxlifecycle4.android.ActivityEvent;
import com.trello.rxlifecycle4.android.RxLifecycleAndroid;
import com.uiuipad.find.BuildConfig;
import com.uiuipad.find.R;
import com.uiuipad.find.activity.main.MainActivity;
import com.uiuipad.find.bean.aolelearn.ActivationBean;
@@ -43,6 +44,7 @@ import com.uiuipad.find.hook.KuxinActivityController;
import com.uiuipad.find.network.NetInterfaceManager;
import com.uiuipad.find.util.ApkUtils;
import com.uiuipad.find.util.AppUtil;
import com.uiuipad.find.util.ModelUtils;
import com.uiuipad.find.util.Utils;
import org.jetbrains.annotations.NotNull;
@@ -96,6 +98,7 @@ public class MainService extends Service implements MainSContact.MainView, Netwo
if (Utils.isScreenOn(MainService.this)) {
mPresenter.updateSnInfo();
}
NetInterfaceManager.getInstance().bindPlatform(ModelUtils.getInstance().getModelId(BuildConfig.platform));
}
@Override

View File

@@ -0,0 +1,32 @@
package com.uiuipad.find.util;
public class ModelUtils {
public ModelUtils() {
}
private static class ModelLoadUtilsHolder {
private final static ModelUtils INSTANCE = new ModelUtils();
}
public static ModelUtils getInstance() {
return ModelLoadUtilsHolder.INSTANCE;
}
public int getModelId(String platform){
switch (platform){
default:
case "U807":
return 2;
case "MTK8183":
return 3;
case "G10P":
return 5;
case "A11MTK8183":
return 6;
case "S6688":
return 7;
case "W8183":
return 8;
}
}
}

View File

@@ -1,3 +0,0 @@
<resources>
<string name="app_name">时间守护</string>
</resources>