version:5.5

fix:
update:优化视频播放界面,优化databinding
This commit is contained in:
2024-05-14 17:58:02 +08:00
parent 112bb15eb4
commit b4cce3e7da
45 changed files with 264 additions and 206 deletions

View File

@@ -15,8 +15,8 @@ android {
applicationId "com.uiuios.aios"
minSdkVersion 24
targetSdkVersion 29
versionCode 45
versionName "5.4"
versionCode 46
versionName "5.5"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
@@ -270,7 +270,8 @@ dependencies {
implementation 'com.github.ForgetAll:LoadingDialog:v1.1.2'
//动态权限框架
implementation 'com.github.getActivity:XXPermissions:16.6'
// 吐司框架https://github.com/getActivity/Toaster
implementation 'com.github.getActivity:Toaster:12.6'
}
preBuild {

View File

@@ -17,11 +17,11 @@ import android.widget.ImageView;
import android.widget.RemoteViews;
import android.widget.TextView;
import com.hjq.toast.Toaster;
import com.uiuios.aios.R;
import com.uiuios.aios.base.BaseActivity;
import com.uiuios.aios.shortcut.ShortcutPkgInfo;
import com.uiuios.aios.shortcut.ShortcutUtils;
import com.uiuios.aios.utils.ToastUtil;
import butterknife.BindView;
import butterknife.ButterKnife;
@@ -88,7 +88,7 @@ public class AddItemActivity extends BaseActivity {
@Override
public void onClick(View v) {
if (mShortcutPkgInfo == null) {
ToastUtil.show("快捷方式信息为空");
Toaster.show("快捷方式信息为空");
return;
}
if (ShortcutUtils.getInstance().addShortcut(mShortcutPkgInfo)) {
@@ -98,7 +98,7 @@ public class AddItemActivity extends BaseActivity {
Log.e(TAG, "onClick: success + " + success);
finish();
} else {
ToastUtil.show("添加失败");
Toaster.show("添加失败");
}
}
});

View File

@@ -30,6 +30,7 @@ import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;
import androidx.constraintlayout.widget.ConstraintLayout;
import com.hjq.toast.Toaster;
import com.tencent.mmkv.MMKV;
import com.uiuios.aios.R;
import com.uiuios.aios.activity.wifi.WiFiManagerActivity;
@@ -37,7 +38,7 @@ import com.uiuios.aios.base.BaseActivity;
import com.uiuios.aios.config.CommonConfig;
import com.uiuios.aios.manager.RemoteManager;
import com.uiuios.aios.utils.BrightnessUtils;
import com.uiuios.aios.utils.ToastUtil;
import com.uiuios.aios.view.RulerSeekBar;
import java.lang.reflect.InvocationTargetException;
@@ -144,7 +145,7 @@ public class ControlActivity extends BaseActivity {
try {
startActivity(new Intent(Settings.ACTION_SETTINGS));
} catch (Exception e) {
ToastUtil.show("打开失败");
Toaster.show("打开失败");
Log.e(TAG, "onClick: " + e.getMessage());
}
}

View File

@@ -14,6 +14,7 @@ import android.widget.TextView;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.hjq.toast.Toaster;
import com.tencent.mmkv.MMKV;
import com.uiuios.aios.R;
import com.uiuios.aios.bean.BaseResponse;
@@ -23,7 +24,7 @@ import com.uiuios.aios.disklrucache.CacheHelper;
import com.uiuios.aios.network.NetInterfaceManager;
import com.uiuios.aios.network.UrlAddress;
import com.uiuios.aios.receiver.BootReceiver;
import com.uiuios.aios.utils.ToastUtil;
import java.lang.reflect.Type;
import java.util.List;
@@ -181,7 +182,7 @@ public class EmergencyActivity extends AppCompatActivity {
}, 2000);
} else {
if (phoneListSet == null) {
ToastUtil.show("没有设置紧急联系人");
Toaster.show("没有设置紧急联系人");
finish();
}
}

View File

@@ -16,6 +16,7 @@ import androidx.databinding.DataBindingUtil;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.hjq.toast.Toaster;
import com.tencent.mmkv.MMKV;
import com.trello.rxlifecycle4.RxLifecycle;
import com.trello.rxlifecycle4.android.ActivityEvent;
@@ -31,7 +32,7 @@ import com.uiuios.aios.databinding.ActivityOrderBinding;
import com.uiuios.aios.gson.GsonUtils;
import com.uiuios.aios.manager.RemoteManager;
import com.uiuios.aios.network.NetInterfaceManager;
import com.uiuios.aios.utils.ToastUtil;
import java.lang.reflect.Type;
import java.math.BigDecimal;
@@ -240,7 +241,7 @@ public class OrderActivity extends BaseDataBindingActivity {
intent1.putExtra("OrderBean", orderBean);
startActivity(intent1);
} else {
ToastUtil.show("下单失败");
Toaster.show("下单失败");
}
}

View File

@@ -6,6 +6,7 @@ import android.view.View;
import androidx.databinding.DataBindingUtil;
import com.hjq.toast.Toaster;
import com.trello.rxlifecycle4.RxLifecycle;
import com.trello.rxlifecycle4.android.ActivityEvent;
import com.uiuios.aios.R;
@@ -16,7 +17,7 @@ import com.uiuios.aios.bean.WxpayBean;
import com.uiuios.aios.databinding.ActivityPayBinding;
import com.uiuios.aios.network.NetInterfaceManager;
import com.uiuios.aios.utils.BitmapUtils;
import com.uiuios.aios.utils.ToastUtil;
import java.util.concurrent.TimeUnit;
@@ -182,7 +183,8 @@ public class PayActivity extends BaseDataBindingActivity {
if (mCheckOrderSubscribe != null && !mCheckOrderSubscribe.isDisposed()) {
mCheckOrderSubscribe.dispose();
}
ToastUtil.show("支付成功");
Toaster.show("支付成功");
startActivity(new Intent(PayActivity.this, OrderListActivity.class));
finish();
} else {
Log.e("checkOrder", "onNext: " + "支付失败");

View File

@@ -10,6 +10,7 @@ import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.hjq.toast.Toaster;
import com.trello.rxlifecycle4.RxLifecycle;
import com.trello.rxlifecycle4.android.ActivityEvent;
import com.uiuios.aios.R;
@@ -21,7 +22,7 @@ import com.uiuios.aios.base.BaseActivity;
import com.uiuios.aios.bean.BaseResponse;
import com.uiuios.aios.dialog.DeleteDialog;
import com.uiuios.aios.network.NetInterfaceManager;
import com.uiuios.aios.utils.ToastUtil;
import java.util.List;
@@ -257,9 +258,9 @@ public class AlarmActivity extends BaseActivity implements AlarmContact.AlarmVie
Log.e("deleteAlarm", "onNext: " + baseResponse);
if (baseResponse.code == 200) {
AlarmUtils.getInstance().deleteAlarmClock(alarmClockData);
ToastUtil.show("删除成功");
Toaster.show("删除成功");
} else {
ToastUtil.show("删除失败:" + baseResponse.msg);
Toaster.show("删除失败:" + baseResponse.msg);
}
}
@@ -293,7 +294,7 @@ public class AlarmActivity extends BaseActivity implements AlarmContact.AlarmVie
// swipeRefreshLayout.setRefreshing(false);
cl_nodata.setVisibility(View.VISIBLE);
rv_data.setVisibility(View.GONE);
ToastUtil.show("没有数据");
Toaster.show("没有数据");
} else {
mAlarmAdapter.setAlarmClockData(localAddAlarm);
// swipeRefreshLayout.setRefreshing(false);

View File

@@ -8,6 +8,7 @@ import androidx.annotation.NonNull;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.hjq.toast.Toaster;
import com.trello.rxlifecycle4.RxLifecycle;
import com.trello.rxlifecycle4.android.ActivityEvent;
import com.uiuios.aios.R;
@@ -20,7 +21,7 @@ import com.uiuios.aios.bean.BaseResponse;
import com.uiuios.aios.databinding.ActivityAlarmPortBinding;
import com.uiuios.aios.dialog.DeleteDialog;
import com.uiuios.aios.network.NetInterfaceManager;
import com.uiuios.aios.utils.ToastUtil;
import java.util.List;
@@ -160,9 +161,9 @@ public class PortAlarmActivity extends BaseMvvmActivity<PortAlarmViewModel, Acti
Log.e("deleteAlarm", "onNext: " + baseResponse);
if (baseResponse.code == 200) {
AlarmUtils.getInstance().deleteAlarmClock(alarmClockData);
ToastUtil.show("删除成功");
Toaster.show("删除成功");
} else {
ToastUtil.show("删除失败:" + baseResponse.msg);
Toaster.show("删除失败:" + baseResponse.msg);
}
}
@@ -195,7 +196,7 @@ public class PortAlarmActivity extends BaseMvvmActivity<PortAlarmViewModel, Acti
// swipeRefreshLayout.setRefreshing(false);
mViewDataBinding.clNodata.setVisibility(View.VISIBLE);
mViewDataBinding.rvData.setVisibility(View.GONE);
ToastUtil.show("没有数据");
Toaster.show("没有数据");
} else {
mAlarmAdapter.setAlarmClockData(localAddAlarm);
// swipeRefreshLayout.setRefreshing(false);

View File

@@ -4,6 +4,7 @@ import android.util.Log;
import androidx.lifecycle.MutableLiveData;
import com.trello.rxlifecycle4.android.ActivityEvent;
import com.uiuios.aios.alarm.AlarmClockData;
import com.uiuios.aios.base.mvvm.BaseViewModel;
import com.uiuios.aios.bean.BaseResponse;
@@ -16,7 +17,7 @@ import io.reactivex.rxjava3.annotations.NonNull;
import io.reactivex.rxjava3.core.Observer;
import io.reactivex.rxjava3.disposables.Disposable;
public class PortAlarmViewModel extends BaseViewModel<ActivityAlarmPortBinding> {
public class PortAlarmViewModel extends BaseViewModel<ActivityAlarmPortBinding, ActivityEvent> {
private static final String TAG = PortAlarmViewModel.class.getSimpleName();

View File

@@ -15,6 +15,7 @@ import androidx.recyclerview.widget.RecyclerView;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.hjq.toast.Toaster;
import com.trello.rxlifecycle4.RxLifecycle;
import com.trello.rxlifecycle4.android.ActivityEvent;
import com.uiuios.aios.R;
@@ -26,7 +27,7 @@ import com.uiuios.aios.bean.BaseResponse;
import com.uiuios.aios.dialog.DeleteDialog;
import com.uiuios.aios.network.NetInterfaceManager;
import com.uiuios.aios.push.PushManager;
import com.uiuios.aios.utils.ToastUtil;
import com.zackratos.ultimatebarx.ultimatebarx.java.UltimateBarX;
import java.util.List;
@@ -148,9 +149,9 @@ public class AlarmClockActivity extends BaseMvpActivity implements AlarmClockCon
Log.e("deleteAlarm", "onNext: " + baseResponse);
if (baseResponse.code == 200) {
AlarmUtils.getInstance().deleteAlarmClock(alarmClockData);
ToastUtil.show("删除成功");
Toaster.show("删除成功");
} else {
ToastUtil.show("删除失败:" + baseResponse.msg);
Toaster.show("删除失败:" + baseResponse.msg);
}
}

View File

@@ -25,6 +25,7 @@ import com.bigkoo.pickerview.view.TimePickerView;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
import com.bumptech.glide.request.RequestOptions;
import com.hjq.toast.Toaster;
import com.luck.picture.lib.basic.PictureSelector;
import com.luck.picture.lib.config.SelectMimeType;
import com.luck.picture.lib.entity.LocalMedia;
@@ -41,7 +42,7 @@ import com.uiuios.aios.utils.FFmpegUtils;
import com.uiuios.aios.utils.FileUtil;
import com.uiuios.aios.utils.ScreenUtil;
import com.uiuios.aios.utils.TimeUtils;
import com.uiuios.aios.utils.ToastUtil;
import com.uiuios.aios.utils.Utils;
import com.zackratos.ultimatebarx.ultimatebarx.java.UltimateBarX;
@@ -292,11 +293,11 @@ public class AlarmClockAddActivity extends BaseMvpActivity {
pvTime.returnData();
if (TextUtils.isEmpty(et_activation.getText())) {
ToastUtil.show("请输入标题");
Toaster.show("请输入标题");
return;
}
if (TextUtils.isEmpty(mPictrueFilePath)) {
ToastUtil.show("请选择图片");
Toaster.show("请选择图片");
return;
}
String timeStamp = getTime(mDate);
@@ -342,7 +343,7 @@ public class AlarmClockAddActivity extends BaseMvpActivity {
alarmClockData.setId(fakeId);
alarmClockData.setIs_local(true);
Log.e(TAG, "checkContent: addAlarmClock = " + AlarmUtils.getInstance().addAlarmClock(alarmClockData));
ToastUtil.show("添加成功");
Toaster.show("添加成功");
Intent intent = new Intent(MainService.uploadAlarmClockReceiver.UPLOAD_ALARM_RECEIVER_ACTION);
sendBroadcast(intent);
finish();
@@ -360,13 +361,13 @@ public class AlarmClockAddActivity extends BaseMvpActivity {
// public void onNext(@NonNull BaseResponse<AlarmClockId> baseResponse) {
// Log.e("addAlarmClock", "onNext: " + baseResponse);
// if (baseResponse.code == 200) {
// ToastUtil.show("添加成功");
// Toaster.show("添加成功");
//// int id = baseResponse.data.getId();
//// alarmClockData.setId(id);
//// AlarmUtils.getInstance().addAlarmClock(alarmClockData);
// finish();
// } else {
// ToastUtil.show("添加失败:" + baseResponse.msg);
// Toaster.show("添加失败:" + baseResponse.msg);
// iv_add.setEnabled(true);
// }
// }
@@ -374,7 +375,7 @@ public class AlarmClockAddActivity extends BaseMvpActivity {
// @Override
// public void onError(@NonNull Throwable e) {
// Log.e("addAlarmClock", "onError: " + e.getMessage());
// ToastUtil.show("已保存到本地");
// Toaster.show("已保存到本地");
// onComplete();
// finish();
// }

View File

@@ -30,6 +30,7 @@ import com.bigkoo.pickerview.view.TimePickerView;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
import com.bumptech.glide.request.RequestOptions;
import com.hjq.toast.Toaster;
import com.luck.picture.lib.basic.PictureSelector;
import com.luck.picture.lib.config.SelectMimeType;
import com.luck.picture.lib.entity.LocalMedia;
@@ -51,7 +52,7 @@ import com.uiuios.aios.utils.FileUtil;
import com.uiuios.aios.utils.GlideLoadUtils;
import com.uiuios.aios.utils.ScreenUtil;
import com.uiuios.aios.utils.TimeUtils;
import com.uiuios.aios.utils.ToastUtil;
import com.uiuios.aios.utils.Utils;
import com.xiasuhuei321.loadingdialog.view.LoadingDialog;
import com.zackratos.ultimatebarx.ultimatebarx.java.UltimateBarX;
@@ -292,13 +293,13 @@ public class AlarmClockEditActivity extends AppCompatActivity implements Lifecyc
private void initData() {
Intent intent = getIntent();
if (intent == null) {
ToastUtil.show("获取闹钟信息失败");
Toaster.show("获取闹钟信息失败");
finish();
return;
}
mId = intent.getIntExtra("id", -1);
if (mId == -1) {
ToastUtil.show("获取闹钟信息失败");
Toaster.show("获取闹钟信息失败");
finish();
return;
}
@@ -345,7 +346,7 @@ public class AlarmClockEditActivity extends AppCompatActivity implements Lifecyc
private void setAlarmClockInfo(AlarmClockData alarmClockData) {
if (alarmClockData == null) {
ToastUtil.show("闹钟信息为空");
Toaster.show("闹钟信息为空");
return;
}
Log.e(TAG, "setAlarmClockInfo: " + alarmClockData);
@@ -413,11 +414,11 @@ public class AlarmClockEditActivity extends AppCompatActivity implements Lifecyc
private void checkContent() {
pvTime.returnData();
if (TextUtils.isEmpty(et_activation.getText())) {
ToastUtil.show("请输入标题");
Toaster.show("请输入标题");
return;
}
if (TextUtils.isEmpty(mPictrueFilePath)) {
ToastUtil.show("请重新选择图片");
Toaster.show("请重新选择图片");
return;
}
String timeStamp = getTime(mDate);
@@ -471,7 +472,7 @@ public class AlarmClockEditActivity extends AppCompatActivity implements Lifecyc
.show();
if (mAlarmClockData.isIs_local()) {
ToastUtil.show("编辑成功");
Toaster.show("编辑成功");
mLoadingDialog.loadSuccess();
mLoadingDialog.close();
mAlarmClockData.setEdited(false);
@@ -484,7 +485,7 @@ public class AlarmClockEditActivity extends AppCompatActivity implements Lifecyc
@Override
public void onSubscribe(@NonNull Disposable d) {
Log.e("checkContent", "onSubscribe: ");
ToastUtil.show("正在上传");
Toaster.show("正在上传");
iv_add.setEnabled(false);
}
@@ -492,14 +493,14 @@ public class AlarmClockEditActivity extends AppCompatActivity implements Lifecyc
public void onNext(@NonNull BaseResponse baseResponse) {
Log.e("checkContent", "onNext: " + baseResponse);
if (baseResponse.code == 200) {
ToastUtil.show("编辑成功");
Toaster.show("编辑成功");
mLoadingDialog.loadSuccess();
mLoadingDialog.close();
mAlarmClockData.setEdited(false);
AlarmUtils.getInstance().updateAlarmClock(mAlarmClockData);
finish();
} else {
ToastUtil.show("编辑失败:" + baseResponse.msg);
Toaster.show("编辑失败:" + baseResponse.msg);
mLoadingDialog.loadFailed();
}
}

View File

@@ -15,6 +15,7 @@ import com.bigkoo.pickerview.view.TimePickerView;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
import com.bumptech.glide.request.RequestOptions;
import com.hjq.toast.Toaster;
import com.luck.picture.lib.basic.PictureSelector;
import com.luck.picture.lib.config.SelectMimeType;
import com.luck.picture.lib.entity.LocalMedia;
@@ -30,7 +31,7 @@ import com.uiuios.aios.utils.FFmpegUtils;
import com.uiuios.aios.utils.FileUtil;
import com.uiuios.aios.utils.ScreenUtil;
import com.uiuios.aios.utils.TimeUtils;
import com.uiuios.aios.utils.ToastUtil;
import com.zackratos.ultimatebarx.ultimatebarx.java.UltimateBarX;
import java.io.File;
@@ -164,11 +165,11 @@ public class PortAlarmClockAddActivity extends BaseMvvmActivity<PortAlarmClockAd
private void checkContent() {
pvTime.returnData();
if (TextUtils.isEmpty(mViewDataBinding.etActivation.getText())) {
ToastUtil.show("请输入标题");
Toaster.show("请输入标题");
return;
}
if (TextUtils.isEmpty(mPictrueFilePath)) {
ToastUtil.show("请选择图片");
Toaster.show("请选择图片");
return;
}
String timeStamp = getTime(mDate);
@@ -190,7 +191,7 @@ public class PortAlarmClockAddActivity extends BaseMvvmActivity<PortAlarmClockAd
alarmClockData.setId(fakeId);
alarmClockData.setIs_local(true);
Log.e(TAG, "checkContent: addAlarmClock = " + AlarmUtils.getInstance().addAlarmClock(alarmClockData));
ToastUtil.show("添加成功");
Toaster.show("添加成功");
Intent intent = new Intent(MainService.uploadAlarmClockReceiver.UPLOAD_ALARM_RECEIVER_ACTION);
sendBroadcast(intent);
finish();

View File

@@ -1,9 +1,10 @@
package com.uiuios.aios.activity.alarmclock.port;
import com.trello.rxlifecycle4.android.ActivityEvent;
import com.uiuios.aios.base.mvvm.BaseViewModel;
import com.uiuios.aios.databinding.ActivityAddAlarmPortBinding;
public class PortAlarmClockAddViewModel extends BaseViewModel<ActivityAddAlarmPortBinding> {
public class PortAlarmClockAddViewModel extends BaseViewModel<ActivityAddAlarmPortBinding, ActivityEvent> {
@Override
public ActivityAddAlarmPortBinding getVDBinding() {

View File

@@ -7,11 +7,12 @@ import android.widget.ImageView;
import androidx.viewpager.widget.ViewPager;
import com.bumptech.glide.Glide;
import com.hjq.toast.Toaster;
import com.uiuios.aios.R;
import com.uiuios.aios.adapter.HealthCodeAdapter;
import com.uiuios.aios.base.BaseActivity;
import com.uiuios.aios.bean.HealthCode;
import com.uiuios.aios.utils.ToastUtil;
import com.uiuios.aios.view.ScaleCircleNavigator;
import net.lucode.hackware.magicindicator.MagicIndicator;
@@ -111,6 +112,6 @@ public class FamilySpaceActivity extends BaseActivity implements FamilySpaceCont
@Override
public void onError() {
ToastUtil.show("连接服务器失败,请检查网络连接");
Toaster.show("连接服务器失败,请检查网络连接");
}
}

View File

@@ -13,6 +13,7 @@ import android.view.View;
import android.widget.EditText;
import android.widget.ImageView;
import com.hjq.toast.Toaster;
import com.luck.picture.lib.basic.PictureSelector;
import com.luck.picture.lib.config.SelectMimeType;
import com.luck.picture.lib.entity.LocalMedia;
@@ -27,7 +28,7 @@ import com.uiuios.aios.bean.BaseResponse;
import com.uiuios.aios.manager.RemoteManager;
import com.uiuios.aios.network.NetInterfaceManager;
import com.uiuios.aios.utils.GlideLoadUtils;
import com.uiuios.aios.utils.ToastUtil;
import com.uiuios.aios.view.ToggleButton;
import java.io.File;
@@ -138,12 +139,12 @@ public class AddContactActivity extends BaseActivity {
private void checkContact() {
String name = et_name.getText().toString();
if (TextUtils.isEmpty(name)) {
ToastUtil.show("请输入联系人姓名");
Toaster.show("请输入联系人姓名");
return;
}
String phone = et_phone.getText().toString();
if (TextUtils.isEmpty(phone)) {
ToastUtil.show("请输入手机号码");
Toaster.show("请输入手机号码");
return;
}
File avatarFile;
@@ -175,10 +176,10 @@ public class AddContactActivity extends BaseActivity {
public void onNext(@NonNull BaseResponse baseResponse) {
Log.e("checkContact", "onNext: " + baseResponse);
if (baseResponse.code == 200) {
ToastUtil.show("已添加");
Toaster.show("已添加");
finish();
} else {
ToastUtil.show(baseResponse.msg);
Toaster.show(baseResponse.msg);
}
}

View File

@@ -33,6 +33,7 @@ import com.google.gson.reflect.TypeToken;
import com.hjq.permissions.OnPermissionCallback;
import com.hjq.permissions.Permission;
import com.hjq.permissions.XXPermissions;
import com.hjq.toast.Toaster;
import com.uiuios.aios.BuildConfig;
import com.uiuios.aios.R;
import com.uiuios.aios.base.BaseActivity;
@@ -48,7 +49,7 @@ import com.uiuios.aios.manager.RemoteManager;
import com.uiuios.aios.service.NotificationService;
import com.uiuios.aios.utils.ApkUtils;
import com.uiuios.aios.utils.AppUsedTimeUtils;
import com.uiuios.aios.utils.ToastUtil;
import com.uiuios.aios.view.ScaleCircleNavigator;
import net.lucode.hackware.magicindicator.MagicIndicator;
@@ -111,7 +112,7 @@ public abstract class BaseMainActivity extends BaseActivity implements MainConta
}
// if (!isNotificationListenersEnabled()) {
// ToastUtil.show("请授予\"" + getString(R.string.app_name) + "\"使用通知权");
// Toaster.show("请授予\"" + getString(R.string.app_name) + "\"使用通知权");
// gotoNotificationAccessSetting(BaseMainActivity.this);
// }
@@ -402,10 +403,10 @@ public abstract class BaseMainActivity extends BaseActivity implements MainConta
@Override
public void onGranted(@NonNull List<String> permissions, boolean allGranted) {
if (!allGranted) {
ToastUtil.show("获取部分权限成功,但部分权限未正常授予");
Toaster.show("获取部分权限成功,但部分权限未正常授予");
return;
}
// ToastUtil.show("获取录音和日历权限成功");
// Toaster.show("获取录音和日历权限成功");
Log.e(TAG, "onGranted: 获取存储权限成功");
addData();
}
@@ -413,11 +414,11 @@ public abstract class BaseMainActivity extends BaseActivity implements MainConta
@Override
public void onDenied(@NonNull List<String> permissions, boolean doNotAskAgain) {
if (doNotAskAgain) {
ToastUtil.show("被永久拒绝授权,请手动授予存储权限");
Toaster.show("被永久拒绝授权,请手动授予存储权限");
// 如果是被永久拒绝就跳转到应用权限系统设置页面
XXPermissions.startPermissionActivity(BaseMainActivity.this, permissions);
} else {
// ToastUtil.show("获取录音和日历权限失败");
// Toaster.show("获取录音和日历权限失败");
Log.e(TAG, "onGranted: 获取存储权限权限失败");
}
}
@@ -463,7 +464,7 @@ public abstract class BaseMainActivity extends BaseActivity implements MainConta
} catch (Exception e1) {
e1.printStackTrace();
}
ToastUtil.show("对不起,您的手机暂不支持");
Toaster.show("对不起,您的手机暂不支持");
e.printStackTrace();
return false;
}

View File

@@ -21,6 +21,7 @@ import androidx.recyclerview.widget.LinearLayoutManager;
import com.blankj.utilcode.util.NetworkUtils;
import com.google.gson.Gson;
import com.hjq.toast.Toaster;
import com.qweather.sdk.bean.base.Code;
import com.qweather.sdk.bean.weather.WeatherDailyBean;
import com.qweather.sdk.bean.weather.WeatherNowBean;
@@ -36,7 +37,7 @@ import com.uiuios.aios.databinding.ActivityWeatherBinding;
import com.uiuios.aios.manager.RemoteManager;
import com.uiuios.aios.utils.DataUtil;
import com.uiuios.aios.utils.TimeUtils;
import com.uiuios.aios.utils.ToastUtil;
import com.uiuios.aios.view.HorizontalItemDecoration;
import java.util.ArrayList;
@@ -180,7 +181,7 @@ public class WeatherActivity extends BaseMvvmActivity<WeatherViewModel, Activity
mViewModel.getWeatherNow(mapGeoResult.getLocation().toString());
mViewModel.getWeather7D(mapGeoResult.getLocation().toString());
} else {
ToastUtil.show("获取位置信息失败");
Toaster.show("获取位置信息失败");
}
}
});
@@ -188,7 +189,7 @@ public class WeatherActivity extends BaseMvvmActivity<WeatherViewModel, Activity
@Override
public void onChanged(String s) {
mViewDataBinding.tvLocation.setText(s);
ToastUtil.show("刷新成功");
Toaster.show("刷新成功");
mViewModel.decodeGeo(s);
}
});
@@ -201,7 +202,7 @@ public class WeatherActivity extends BaseMvvmActivity<WeatherViewModel, Activity
WeatherNowBean.NowBaseBean now = weatherNowBean.getNow();
Log.d("getWeatherNow: ", "onSuccess: now " + new Gson().toJson(now));
mViewDataBinding.setNowBaseBean(now);
ToastUtil.show("刷新成功");
Toaster.show("刷新成功");
} else {
//在此查看返回数据失败的原因
Code code = weatherNowBean.getCode();
@@ -209,7 +210,7 @@ public class WeatherActivity extends BaseMvvmActivity<WeatherViewModel, Activity
}
} else {
Log.e(TAG, "getWeatherNow: weatherNowBean is null");
ToastUtil.show("获取天气失败");
Toaster.show("获取天气失败");
mViewModel.getWeatherCache();
}
}
@@ -264,7 +265,7 @@ public class WeatherActivity extends BaseMvvmActivity<WeatherViewModel, Activity
public void selectAddress(View view) {
hideSoftKeyBoard(view);
// if (!mLoaded) {
// ToastUtil.show("位置数据没有加载完成");
// Toaster.show("位置数据没有加载完成");
// } else {
register.launch(new Intent(WeatherActivity.this, LocationAcivity.class));
// }

View File

@@ -39,7 +39,7 @@ import io.reactivex.rxjava3.core.Observer;
import io.reactivex.rxjava3.disposables.Disposable;
import io.reactivex.rxjava3.schedulers.Schedulers;
public class WeatherViewModel extends BaseViewModel<ActivityWeatherBinding> {
public class WeatherViewModel extends BaseViewModel<ActivityWeatherBinding, ActivityEvent> {
private static final String TAG = WeatherViewModel.class.getSimpleName();
private MMKV mMMKV = MMKV.mmkvWithID(CommonConfig.MMKV_ID, MMKV.MULTI_PROCESS_MODE);

View File

@@ -13,12 +13,13 @@ import android.widget.TextView;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.hjq.toast.Toaster;
import com.uiuios.aios.R;
import com.uiuios.aios.adapter.AvailableWiFiAdapter;
import com.uiuios.aios.adapter.SavedWiFiAdapter;
import com.uiuios.aios.base.BaseActivity;
import com.uiuios.aios.bean.WiFiInfo;
import com.uiuios.aios.utils.ToastUtil;
import com.uiuios.aios.view.HorizontalItemDecoration;
import java.util.List;
@@ -146,7 +147,7 @@ public class WiFiManagerActivity extends BaseActivity implements WiFiContact.WiF
@Override
public void setSavedWiFiList(List<WiFiInfo> wiFiList) {
ToastUtil.show("刷新成功");
Toaster.show("刷新成功");
mSavedWiFiAdapter.setResultList(wiFiList);
}

View File

@@ -14,12 +14,13 @@ import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.recyclerview.widget.RecyclerView;
import com.bumptech.glide.Glide;
import com.hjq.toast.Toaster;
import com.shehuan.niv.NiceImageView;
import com.uiuios.aios.R;
import com.uiuios.aios.activity.contact.AddContactActivity;
import com.uiuios.aios.activity.records.RecordsActivity;
import com.uiuios.aios.bean.Contact;
import com.uiuios.aios.utils.ToastUtil;
import java.util.List;
@@ -50,7 +51,7 @@ public class ContactAdapter extends RecyclerView.Adapter<ContactAdapter.ContactH
public void onClick(View view) {
// int qch_call_forbid = Settings.System.getInt(mContext.getContentResolver(), "qch_call_forbid", 0);
// if (qch_call_forbid == 1) {
// ToastUtil.show("电话功能被禁用");
// Toaster.show("电话功能被禁用");
// icon_return;
// }
Intent dialIntent = new Intent(Intent.ACTION_CALL);
@@ -61,7 +62,7 @@ public class ContactAdapter extends RecyclerView.Adapter<ContactAdapter.ContactH
// mContext.startActivity(new Intent(mContext, DialerActivity.class));
mContext.startActivity(new Intent(mContext, RecordsActivity.class));
} catch (Exception e) {
ToastUtil.show("无法打开电话功能");
Toaster.show("无法打开电话功能");
}
} else if (DIALER_ADD_CONTACT.equals(contact.getMobile())) {
Intent intent = new Intent(mContext, AddContactActivity.class);

View File

@@ -14,6 +14,7 @@ import androidx.annotation.NonNull;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.recyclerview.widget.RecyclerView;
import com.hjq.toast.Toaster;
import com.uiuios.aios.R;
import com.uiuios.aios.activity.AddIconActivity;
import com.uiuios.aios.bean.DesktopIcon;
@@ -22,7 +23,7 @@ import com.uiuios.aios.manager.AppManager;
import com.uiuios.aios.utils.ApkUtils;
import com.uiuios.aios.utils.BitmapUtils;
import com.uiuios.aios.utils.IconUtils;
import com.uiuios.aios.utils.ToastUtil;
import java.util.List;
@@ -82,7 +83,7 @@ public class HomeAppAdapter extends RecyclerView.Adapter<HomeAppAdapter.AppHolde
if (setting_other_appInstaller == 0
&& !ApkUtils.isSystemApp(mContext, desktopIcon.getPackage()
)) {
ToastUtil.show("已禁止应用打开");
Toaster.show("已禁止应用打开");
} else {
ApkUtils.openPackage(mContext, desktopIcon.getPackage(), desktopIcon.getClazz());
}

View File

@@ -48,8 +48,9 @@ public class KnowledgeVideoAdapter extends RecyclerView.Adapter<KnowledgeVideoAd
@Override
public void onClick(View v) {
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setComponent(new ComponentName("com.uiui.video", "com.uiui.video.activity.TikTokActivity"));
intent.setComponent(new ComponentName("com.uiui.video", "com.uiui.video.activity.main.MainActivity"));
intent.putExtra("position", position);
intent.putExtra("switchId", 1);
intent.putParcelableArrayListExtra("list", mKnowledgeVideoList);
try {
mContext.startActivity(intent);

View File

@@ -46,8 +46,9 @@ public class LivenVideoAdapter extends RecyclerView.Adapter<LivenVideoAdapter.Li
@Override
public void onClick(View v) {
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setComponent(new ComponentName("com.uiui.video", "com.uiui.video.activity.TikTokActivity"));
intent.setComponent(new ComponentName("com.uiui.video", "com.uiui.video.activity.main.MainActivity"));
intent.putExtra("position", position);
intent.putExtra("switchId", 0);
intent.putParcelableArrayListExtra("list", mLivenVideoList);
try {
mContext.startActivity(intent);

View File

@@ -11,6 +11,7 @@ import com.alibaba.sdk.android.push.CloudPushService;
import com.alibaba.sdk.android.push.CommonCallback;
import com.alibaba.sdk.android.push.noonesdk.PushServiceFactory;
import com.arialyy.aria.core.Aria;
import com.hjq.toast.Toaster;
import com.qweather.sdk.view.HeConfig;
import com.tencent.bugly.crashreport.CrashReport;
import com.tencent.mmkv.MMKV;
@@ -40,6 +41,9 @@ public class BaseApplication extends Application {
String rootDir = MMKV.initialize(this);
Log.e(TAG, "mmkv root: " + rootDir);
// 初始化 Toast 框架
Toaster.init(this);
CrashReport.initCrashReport(getApplicationContext(), "", false);
aliyunPushInit();

View File

@@ -5,8 +5,6 @@ import android.content.Context;
import androidx.databinding.ViewDataBinding;
import androidx.lifecycle.ViewModel;
import com.trello.rxlifecycle4.android.ActivityEvent;
import java.lang.ref.WeakReference;
import io.reactivex.rxjava3.subjects.BehaviorSubject;
@@ -14,7 +12,7 @@ import io.reactivex.rxjava3.subjects.BehaviorSubject;
/**
* 所有viewmodel的基类
*/
public abstract class BaseViewModel<VDB extends ViewDataBinding> extends ViewModel implements ViewDataBindingCallback {
public abstract class BaseViewModel<VDB extends ViewDataBinding, T> extends ViewModel implements ViewDataBindingCallback {
/**
* 当前viewmodel对应的页面binding
@@ -24,7 +22,7 @@ public abstract class BaseViewModel<VDB extends ViewDataBinding> extends ViewMod
@Override
public void setVDBinding(ViewDataBinding vdBinding) {
binding = (VDB)vdBinding;
binding = (VDB) vdBinding;
}
@Override
@@ -43,7 +41,7 @@ public abstract class BaseViewModel<VDB extends ViewDataBinding> extends ViewMod
@Override
public void setCtx(Context context) {
if(ctx == null) {
if (ctx == null) {
ctx = new WeakReference<>(context);
}
}
@@ -59,15 +57,15 @@ public abstract class BaseViewModel<VDB extends ViewDataBinding> extends ViewMod
public abstract void onDestroy();
private BehaviorSubject<ActivityEvent> mBehaviorSubject;
private BehaviorSubject<T> mBehaviorSubject;
@Override
public void setLifecycle(BehaviorSubject subject) {
this.mBehaviorSubject =subject;
this.mBehaviorSubject = (BehaviorSubject<T>) subject;
}
@Override
public BehaviorSubject<ActivityEvent> getLifecycle() {
public BehaviorSubject<T> getLifecycle() {
return mBehaviorSubject;
}
}

View File

@@ -0,0 +1,35 @@
package com.uiuios.aios.bean;
import java.io.Serializable;
public class ServeBean implements Serializable {
private static final long serialVersionUID = -725553008051183760L;
int id;
String name;
String image;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getImage() {
return image;
}
public void setImage(String image) {
this.image = image;
}
}

View File

@@ -23,6 +23,7 @@ import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.fragment.app.Fragment;
import com.google.gson.JsonObject;
import com.hjq.toast.Toaster;
import com.trello.rxlifecycle4.RxLifecycle;
import com.trello.rxlifecycle4.android.FragmentEvent;
import com.uiuios.aios.R;
@@ -45,7 +46,7 @@ import com.uiuios.aios.shortcut.ShortcutUtils;
import com.uiuios.aios.utils.ApkUtils;
import com.uiuios.aios.utils.AppUsedTimeUtils;
import com.uiuios.aios.utils.IconUtils;
import com.uiuios.aios.utils.ToastUtil;
import com.uiuios.aios.view.MyGridLayout;
import java.util.ArrayList;
@@ -250,7 +251,7 @@ public class AppListFragment extends BaseFragment {
case "com.android.dialer":
// int aole_call_forbid = Settings.System.getInt(mContext.getContentResolver(), "aole_call_forbid", 0);
// if (aole_call_forbid == 1) {
// ToastUtil.show("电话功能被禁用");
// Toaster.show("电话功能被禁用");
// return;
// } else {
ApkUtils.openPackage(v.getContext(), desktopIcon.getPackage(), desktopIcon.getClazz());
@@ -273,7 +274,7 @@ public class AppListFragment extends BaseFragment {
if (setting_other_appInstaller == 0
&& !ApkUtils.isSystemApp(mContext, desktopIcon.getPackage()
)) {
ToastUtil.show("已禁止应用打开");
Toaster.show("已禁止应用打开");
} else {
ApkUtils.openPackage(v.getContext(), desktopIcon.getPackage(), desktopIcon.getClazz());
AppUsedTimeUtils.getInstance().setAppPackageName(desktopIcon.getPackage());
@@ -324,14 +325,14 @@ public class AppListFragment extends BaseFragment {
// ApkUtils.disableApp(mContext, pkg);
AppStatusManager.getInstance().addHidedApp(pkg);
} else {
ToastUtil.show("隐藏失败,检查网络连接");
Toaster.show("隐藏失败,检查网络连接");
}
}
@Override
public void onError(@NonNull Throwable e) {
Log.e("updateAppDisableStatus", "onError: ");
ToastUtil.show("隐藏失败,检查网络连接");
Toaster.show("隐藏失败,检查网络连接");
onComplete();
}
@@ -360,7 +361,7 @@ public class AppListFragment extends BaseFragment {
@Override
public void onPositiveClick() {
if (!ShortcutUtils.getInstance().deleteShortcut(shortcutPkgInfo.getId(), shortcutPkgInfo.getPackageName())) {
ToastUtil.show("删除失败");
Toaster.show("删除失败");
}
mContext.sendBroadcast(new Intent(MainActivity.ACTION_PACKAGE_HIDE));
shortcutDialog.dismiss();

View File

@@ -39,6 +39,7 @@ import androidx.annotation.NonNull;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.fragment.app.Fragment;
import com.hjq.toast.Toaster;
import com.tencent.mmkv.MMKV;
import com.uiuios.aios.R;
import com.uiuios.aios.activity.ControlActivity;
@@ -50,7 +51,7 @@ import com.uiuios.aios.config.CommonConfig;
import com.uiuios.aios.disklrucache.CacheHelper;
import com.uiuios.aios.manager.RemoteManager;
import com.uiuios.aios.utils.BrightnessUtils;
import com.uiuios.aios.utils.ToastUtil;
import com.uiuios.aios.utils.Utils;
import com.uiuios.aios.view.RulerSeekBar;
@@ -207,7 +208,7 @@ public class ControlFragment extends BaseFragment {
try {
startActivity(new Intent(Settings.ACTION_SETTINGS));
} catch (Exception e) {
ToastUtil.show("打开失败");
Toaster.show("打开失败");
Log.e(TAG, "onClick: " + e.getMessage());
}
}

View File

@@ -38,6 +38,7 @@ import androidx.recyclerview.widget.RecyclerView;
import com.blankj.utilcode.util.NetworkUtils;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.hjq.toast.Toaster;
import com.king.view.circleprogressview.CircleProgressView;
import com.qweather.sdk.bean.base.Code;
import com.qweather.sdk.bean.base.Lang;
@@ -79,7 +80,7 @@ import com.uiuios.aios.utils.AppUtil;
import com.uiuios.aios.utils.BitmapUtils;
import com.uiuios.aios.utils.NetStateUtils;
import com.uiuios.aios.utils.SchemeUtils;
import com.uiuios.aios.utils.ToastUtil;
import com.uiuios.aios.utils.Utils;
import java.lang.reflect.Type;
@@ -601,7 +602,7 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
if (is_quick == 0) {
startActivity(new Intent(mContext, QuickAppActivity.class));
} else {
ToastUtil.show("已在小程序设置");
Toaster.show("已在小程序设置");
}
return false;
}
@@ -666,7 +667,7 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
Utils.openLauncher3(mContext);
passwordDialog.dismiss();
} else {
ToastUtil.show("密码错误");
Toaster.show("密码错误");
}
}
@@ -715,7 +716,7 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
private void checkContact() {
// int aole_call_forbid = Settings.System.getInt(mContext.getContentResolver(), "aole_call_forbid", 0);
// if (aole_call_forbid == 1) {
// ToastUtil.show("电话功能被禁用");
// Toaster.show("电话功能被禁用");
// return;
// }
startActivity(new Intent(mContext, ContactActivity.class));
@@ -806,7 +807,7 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
private void openScheme(String uri) {
int is_health = mMMKV.decodeInt("is_health", 0);
if (is_health == 0) {
ToastUtil.show("AI健康功能已关闭");
Toaster.show("AI健康功能已关闭");
return;
}
SingleDialog dialog = new SingleDialog(mContext);

View File

@@ -5,6 +5,7 @@ import com.uiuios.aios.base.mvp.BasePresenter;
import com.uiuios.aios.base.mvp.BaseView;
import com.uiuios.aios.bean.ArticleInfo;
import com.uiuios.aios.bean.GoodsInfo;
import com.uiuios.aios.bean.ServeBean;
import java.util.ArrayList;
import java.util.List;
@@ -15,6 +16,7 @@ public class SecondContact {
void getArticle();
void getLivenVideoList();
void getKnowledgeVideoList();
void getServe();
}
public interface View extends BaseView {
@@ -22,5 +24,6 @@ public class SecondContact {
void setArticle(List<ArticleInfo> articleInfoList);
void setLivenVideoList(ArrayList<VideoInfo> livenVideoList);
void setKnowledgeVideoList(ArrayList<VideoInfo> knowledgeVideoList);
void setServe(ServeBean serve);
}
}

View File

@@ -10,6 +10,7 @@ import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import androidx.annotation.NonNull;
import androidx.constraintlayout.widget.ConstraintLayout;
@@ -28,6 +29,8 @@ import com.uiuios.aios.adapter.NewGoodsAdapter;
import com.uiuios.aios.base.BaseFragment;
import com.uiuios.aios.bean.ArticleInfo;
import com.uiuios.aios.bean.GoodsInfo;
import com.uiuios.aios.bean.ServeBean;
import com.uiuios.aios.utils.GlideLoadUtils;
import com.uiuios.aios.utils.JGYUtils;
import java.text.SimpleDateFormat;
@@ -58,6 +61,9 @@ public class SecondFragment extends BaseFragment implements SecondContact.View,
@BindView(R.id.cl_service)
ConstraintLayout cl_service;
@BindView(R.id.iv_serve)
ImageView iv_serve;
private View rootView;
private Context mContext;
@@ -293,7 +299,7 @@ public class SecondFragment extends BaseFragment implements SecondContact.View,
mPresenter.getArticle();
mPresenter.getLivenVideoList();
mPresenter.getKnowledgeVideoList();
mPresenter.getServe();
}
@Override
@@ -357,4 +363,11 @@ public class SecondFragment extends BaseFragment implements SecondContact.View,
mKnowledgeVideoAdapter.setLivenVideoList(knowledgeVideoList);
}
@Override
public void setServe(ServeBean serve) {
if (serve != null) {
GlideLoadUtils.getInstance().glideLoad(mContext, serve.getImage(), iv_serve, R.drawable.enterprise_wechat);
}
}
}

View File

@@ -11,6 +11,7 @@ import com.uiuios.aios.bean.ArticleList;
import com.uiuios.aios.bean.BaseResponse;
import com.uiuios.aios.bean.GoodsInfo;
import com.uiuios.aios.bean.GoodsList;
import com.uiuios.aios.bean.ServeBean;
import com.uiuios.aios.network.NetInterfaceManager;
import java.util.ArrayList;
@@ -164,6 +165,7 @@ public class SecondPresenter implements SecondContact.Presenter {
@Override
public void getKnowledgeVideoList() {
NetInterfaceManager.getInstance().getKnowledgeVideoListObservable()
.compose(RxLifecycle.bindUntilEvent(getLifecycle(), FragmentEvent.DESTROY))
.subscribe(new Observer<BaseResponse<ArrayList<VideoInfo>>>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
@@ -192,4 +194,39 @@ public class SecondPresenter implements SecondContact.Presenter {
});
}
@Override
public void getServe() {
NetInterfaceManager.getInstance().getServeObservable()
.compose(RxLifecycle.bindUntilEvent(getLifecycle(), FragmentEvent.DESTROY))
.subscribe(new Observer<BaseResponse<ServeBean>>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
Log.e("getServe", "onSubscribe: ");
}
@Override
public void onNext(@NonNull BaseResponse<ServeBean> serveBeanBaseResponse) {
Log.e("getServe", "onNext: " + serveBeanBaseResponse);
if (serveBeanBaseResponse.code == 200) {
ServeBean serveBean = serveBeanBaseResponse.data;
if (serveBean != null) {
mView.setServe(serveBean);
}
} else {
}
}
@Override
public void onError(@NonNull Throwable e) {
Log.e("getServe", "onError: " + e.getMessage());
}
@Override
public void onComplete() {
Log.e("getServe", "onComplete: ");
}
});
}
}

View File

@@ -31,6 +31,7 @@ import com.uiuios.aios.bean.NetDesktopIcon;
import com.uiuios.aios.bean.OrderBean;
import com.uiuios.aios.bean.OrderIndexData;
import com.uiuios.aios.bean.RegionInfo;
import com.uiuios.aios.bean.ServeBean;
import com.uiuios.aios.bean.SnInfo;
import com.uiuios.aios.bean.SystemSettings;
import com.uiuios.aios.bean.UserAvatarInfo;
@@ -44,6 +45,7 @@ import com.uiuios.aios.manager.ConnectMode;
import com.uiuios.aios.manager.RemoteManager;
import com.uiuios.aios.network.api.ActivityListApi;
import com.uiuios.aios.network.api.AddressIndexApi;
import com.uiuios.aios.network.api.ServeApi;
import com.uiuios.aios.network.api.alarmclock.AlarmClockAddApi;
import com.uiuios.aios.network.api.alarmclock.AlarmClockApi;
import com.uiuios.aios.network.api.alarmclock.AlarmClockDeleteApi;
@@ -453,6 +455,13 @@ public class NetInterfaceManager {
.observeOn(AndroidSchedulers.mainThread());
}
public Observable<BaseResponse<ServeBean>> getServeObservable() {
return mRetrofit.create(ServeApi.class)
.getServe(RemoteManager.getInstance().getSerial())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread());
}
public Observable<BaseResponse<OrderBean>> getGoodsBuyObservable(Map<String, RequestBody> params) {
return mRetrofit.create(GoodsBuyApi.class)
.goodsBuy(params)

View File

@@ -129,6 +129,9 @@ public class UrlAddress {
*/
/*获取省市区数据*/
public static final String REGION_LIST = "common/region-list";
/*获取企业客服*/
public static final String SERVE_PIC = "common/serve";
/**
* 订单管理

View File

@@ -0,0 +1,19 @@
package com.uiuios.aios.network.api;
import com.uiuios.aios.bean.BaseResponse;
import com.uiuios.aios.bean.RegionInfo;
import com.uiuios.aios.bean.ServeBean;
import com.uiuios.aios.network.UrlAddress;
import java.util.List;
import io.reactivex.rxjava3.core.Observable;
import retrofit2.http.GET;
import retrofit2.http.Query;
public interface ServeApi {
@GET(UrlAddress.SERVE_PIC)
Observable<BaseResponse<ServeBean>> getServe(
@Query("sn") String sn
);
}

View File

@@ -5,10 +5,11 @@ import android.content.ContentResolver;
import android.content.Context;
import android.content.Intent;
import com.hjq.toast.Toaster;
import com.tencent.mmkv.MMKV;
import com.uiuios.aios.config.CommonConfig;
import com.uiuios.aios.disklrucache.CacheHelper;
import com.uiuios.aios.utils.ToastUtil;
public class PushManager {
private static final String TAG = PushManager.class.getSimpleName();
@@ -50,7 +51,7 @@ public class PushManager {
public void setPushContent(String title, String extras) {
switch (title) {
case JIGUANG_ALARM_CLOCK:
ToastUtil.betaShow("收到推送消息: 设置闹钟");
Toaster.debugShow("收到推送消息: 设置闹钟");
Intent intent = new Intent(SET_ALARMCLOCK);
mContext.sendBroadcast(intent);
break;

View File

@@ -50,7 +50,7 @@ public class InstallResultReceiver extends BroadcastReceiver {
// Log.e("fht", LEGACY_STATUS);
// Log.e("fht", STATUS_MESSAGE);
if (STATUS_MESSAGE != null && "INSTALL_SUCCEEDED".equals(STATUS_MESSAGE)) {
// ToastUtil.show(PACKAGE_NAME + "安装成功");
// Toaster.show(PACKAGE_NAME + "安装成功");
}
}
}

View File

@@ -27,7 +27,7 @@ import com.uiuios.aios.utils.ApkUtils;
import com.uiuios.aios.utils.AppUsedTimeUtils;
import com.uiuios.aios.utils.CmdUtil;
import com.uiuios.aios.utils.ForegroundAppUtil;
import com.uiuios.aios.utils.ToastUtil;
import com.uiuios.aios.utils.Utils;
import java.io.File;
@@ -462,7 +462,7 @@ public class MainService extends BaseService implements MainSContact.MainSView,
@Download.onTaskRunning
protected void running(DownloadTask task) {
Log.e("aria", "正在下载:" + task.getPercent() + ":" + task.getExtendField());
// ToastUtil.show("正在下载:" + task.getPercent() + "%" + "\t" + Formatter.formatFileSize(MainService.this, task.getSpeed()) + "/s");
// Toaster.show("正在下载:" + task.getPercent() + "%" + "\t" + Formatter.formatFileSize(MainService.this, task.getSpeed()) + "/s");
}
@Download.onTaskComplete

View File

@@ -19,6 +19,7 @@ import android.util.Log;
import androidx.annotation.RequiresApi;
import com.hjq.toast.Toaster;
import com.tencent.mmkv.MMKV;
import com.uiuios.aios.BuildConfig;
import com.uiuios.aios.R;
@@ -432,7 +433,7 @@ public class ApkUtils {
return true;
} catch (Exception e) {
Log.e(TAG, "openPackage: " + e.getMessage());
ToastUtil.show("应用未安装");
Toaster.show("应用未安装");
}
}
return false;

View File

@@ -47,7 +47,7 @@ public class GlideLoadUtils {
*/
public void glideLoad(Context context, String url, ImageView imageView, int defaultImage) {
if (context != null) {
Glide.with(context).load(url).centerCrop().error(defaultImage).into(imageView);
Glide.with(context).load(url).error(defaultImage).into(imageView);
} else {
Log.i(TAG, "Picture loading failed,context is null");
}

View File

@@ -1,94 +0,0 @@
package com.uiuios.aios.utils;
import android.annotation.SuppressLint;
import android.content.Context;
import android.graphics.Color;
import android.os.Build;
import android.os.Handler;
import android.os.Looper;
import android.util.Log;
import android.view.Gravity;
import android.widget.Toast;
import com.blankj.utilcode.util.ToastUtils;
import com.uiuios.aios.BuildConfig;
/**
* Created by haoge on 2017/3/2.
*/
public class ToastUtil {
private static final String TAG = ToastUtil.class.getSimpleName();
@SuppressLint("StaticFieldLeak")
private static Context mContext;
private static Handler mainHandler = new Handler(Looper.getMainLooper());
private static Toast debugToast;
private static Toast toast;
@SuppressLint("ShowToast")
public static void init(Context context) {
mContext = context;
toast = Toast.makeText(mContext, "", Toast.LENGTH_SHORT);
debugToast = Toast.makeText(mContext, "", Toast.LENGTH_SHORT);
}
private static long time1 = 0L;
private static long time2 = 0L;
public static void show(final String msg) {
ToastUtils.make()
// .setBgColor(ColorUtils.getColor(R.color.toast_color))
.setTextColor(Color.DKGRAY)
.setGravity(Gravity.CENTER, 0, 0)
.setNotUseSystemToast()
.show(msg);
}
public static void betaShow(final String msg) {
if (BuildConfig.DEBUG) {
ToastUtils.make()
// .setBgColor(ColorUtils.getColor(R.color.toast_color))
.setTextColor(Color.RED)
// .setGravity(Gravity.CENTER, 0, 0)
.setNotUseSystemToast()
.setDurationIsLong(true)
.show(msg);
} else {
Log.e(TAG, "debugShow: " + msg);
}
}
private static Toast mToast = null;
//android 8.0以后限制
//https://www.jianshu.com/p/d9813ad03d59
//https://www.jianshu.com/p/050ce052b873
public static void showToast(Context context, String text, int duration) {
if (Build.VERSION.SDK_INT == Build.VERSION_CODES.P) {
Toast.makeText(context, text, duration).show();
} else {
if (mToast == null) {
mToast = Toast.makeText(context, text, duration);
} else {
mToast.setText(text);
mToast.setDuration(duration);
}
mToast.show();
}
}
// public static void showInCenter(String msg) {
// mainHandler.post(() -> {
// if (toast != null) {
// toast.setGravity(Gravity.CENTER, 0, 0);
// toast.setText(msg);
// toast.show();
// }
// });
// }
}

View File

@@ -13,7 +13,8 @@ import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import com.uiuios.aios.utils.ToastUtil;
import com.hjq.toast.Toaster;
/**
* Copyright (C) 2023-2024 Author
@@ -116,10 +117,10 @@ public class CounterView extends LinearLayout {
try {
BigDecimal currentValue = new BigDecimal(s.toString());
if (currentValue.compareTo(minValue) < 0) {
ToastUtil.show("输入数字不能小于最小值 " + minValue);
Toaster.show("输入数字不能小于最小值 " + minValue);
setEditTextValue(minValue.toString());
} else if (currentValue.compareTo(maxValue) > 0) {
ToastUtil.show("输入数字不能大于最大值 " + maxValue);
Toaster.show("输入数字不能大于最大值 " + maxValue);
setEditTextValue(maxValue.toString());
}
} catch (NumberFormatException e) {
@@ -187,7 +188,7 @@ public class CounterView extends LinearLayout {
BigDecimal currentValue = new BigDecimal(input);
BigDecimal newValue = currentValue.subtract(increment);
if (newValue.compareTo(minValue) < 0) {
ToastUtil.show("输入数字不能小于最小值 " + minValue);
Toaster.show("输入数字不能小于最小值 " + minValue);
newValue = minValue;
}
setEditTextValue(newValue.toString());
@@ -207,7 +208,7 @@ public class CounterView extends LinearLayout {
BigDecimal currentValue = new BigDecimal(input);
BigDecimal newValue = currentValue.add(increment);
if (newValue.compareTo(maxValue) > 0) {
ToastUtil.show("输入数字不能大于最大值 " + maxValue);
Toaster.show("输入数字不能大于最大值 " + maxValue);
newValue = maxValue;
}
setEditTextValue(newValue.toString());

View File

@@ -181,6 +181,7 @@
app:layout_constraintTop_toBottomOf="@+id/textView29">
<ImageView
android:id="@+id/iv_serve"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:adjustViewBounds="true"

View File

@@ -180,6 +180,7 @@
app:layout_constraintTop_toBottomOf="@+id/textView29">
<ImageView
android:id="@+id/iv_serve"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:adjustViewBounds="true"