version:8.1

fix:
update:接口优化,地图低功耗
This commit is contained in:
2023-01-13 19:04:52 +08:00
parent 5bd102b891
commit a2ef127a4d
20 changed files with 442 additions and 294 deletions

View File

@@ -16,8 +16,8 @@ android {
applicationId "com.uiui.aios" applicationId "com.uiui.aios"
minSdkVersion 24 minSdkVersion 24
targetSdkVersion 29 targetSdkVersion 29
versionCode 64 versionCode 72
versionName "7.3" versionName "8.1"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
@@ -196,7 +196,7 @@ dependencies {
// implementation 'io.reactivex.rxjava2:rxjava:2.2.12' // implementation 'io.reactivex.rxjava2:rxjava:2.2.12'
// implementation 'io.reactivex.rxjava2:rxandroid:2.1.1' // implementation 'io.reactivex.rxjava2:rxandroid:2.1.1'
// //
implementation 'com.squareup.okhttp3:okhttp:4.9.3' implementation 'com.squareup.okhttp3:okhttp:4.9.1'
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'
// implementation 'com.squareup.retrofit2:adapter-rxjava2:2.4.0' // implementation 'com.squareup.retrofit2:adapter-rxjava2:2.4.0'

View File

@@ -1,9 +0,0 @@
package com.uiui.aios;
import java.io.Serializable;
public class AppInfo implements Serializable {
private static final long serialVersionUID = -5488458740561098181L;
}

View File

@@ -34,6 +34,7 @@ import com.uiui.aios.base.BaseActivity;
import com.uiui.aios.base.BaseFragmentPagerAdapter; import com.uiui.aios.base.BaseFragmentPagerAdapter;
import com.uiui.aios.bean.AlarmItem; import com.uiui.aios.bean.AlarmItem;
import com.uiui.aios.bean.DesktopIcon; import com.uiui.aios.bean.DesktopIcon;
import com.uiui.aios.config.CommonConfig;
import com.uiui.aios.dialog.PasswordDialog; import com.uiui.aios.dialog.PasswordDialog;
import com.uiui.aios.dialog.PrivacyPolicyDialog; import com.uiui.aios.dialog.PrivacyPolicyDialog;
import com.uiui.aios.fragment.AppListFragment; import com.uiui.aios.fragment.AppListFragment;
@@ -123,6 +124,7 @@ public class MainActivity extends BaseActivity implements MainContact.MainView {
mCustomFragment = new CustomFragment(); mCustomFragment = new CustomFragment();
mFragments.add(mCustomFragment); mFragments.add(mCustomFragment);
mMainPresenter.getSystemSettings(); mMainPresenter.getSystemSettings();
// mMainPresenter.getAdminSnSetting();
ArrayList<DesktopIcon> desktopIcons = ApkUtils.queryFilterAppInfo(this); ArrayList<DesktopIcon> desktopIcons = ApkUtils.queryFilterAppInfo(this);
int x = 0; int x = 0;
@@ -329,6 +331,7 @@ public class MainActivity extends BaseActivity implements MainContact.MainView {
@Override @Override
protected void onStart() { protected void onStart() {
super.onStart(); super.onStart();
Log.e(TAG, "onStart: ");
AppUsedTimeUtils.getInstance().setAppPackageName(BuildConfig.APPLICATION_ID); AppUsedTimeUtils.getInstance().setAppPackageName(BuildConfig.APPLICATION_ID);
AppUsedTimeUtils.getInstance().setStartTime(System.currentTimeMillis()); AppUsedTimeUtils.getInstance().setStartTime(System.currentTimeMillis());
getAlarmData(); getAlarmData();
@@ -351,7 +354,7 @@ public class MainActivity extends BaseActivity implements MainContact.MainView {
ToastUtil.show("请授予\"" + getString(R.string.app_name) + "\"使用通知权"); ToastUtil.show("请授予\"" + getString(R.string.app_name) + "\"使用通知权");
gotoNotificationAccessSetting(this); gotoNotificationAccessSetting(this);
} }
int is_activation = Settings.Global.getInt(getContentResolver(), "uiui_activation", 0); int is_activation = Settings.Global.getInt(getContentResolver(), CommonConfig.UIUI_ACTIVATION_KEY, 0);
Log.e(TAG, "onResume: is_activation = " + is_activation); Log.e(TAG, "onResume: is_activation = " + is_activation);
if (is_activation == 1) { if (is_activation == 1) {
LauncherUtils.setDefaultDesktop(MainActivity.this, BuildConfig.APPLICATION_ID, this.getClass().getName()); LauncherUtils.setDefaultDesktop(MainActivity.this, BuildConfig.APPLICATION_ID, this.getClass().getName());
@@ -359,8 +362,6 @@ public class MainActivity extends BaseActivity implements MainContact.MainView {
LauncherUtils.setDefaultDesktop(MainActivity.this, LauncherUtils.Launcher3, LauncherUtils.Launcher3Class); LauncherUtils.setDefaultDesktop(MainActivity.this, LauncherUtils.Launcher3, LauncherUtils.Launcher3Class);
} }
addData(); addData();
mMainPresenter.sendRunningInfo();
mMainPresenter.getAdminSnSetting();
addHomeWatcher(); addHomeWatcher();
} }
@@ -394,7 +395,7 @@ public class MainActivity extends BaseActivity implements MainContact.MainView {
public void onHomePressed() { public void onHomePressed() {
//按了HOME键 //按了HOME键
Log.e(TAG, "onHomePressed: "); Log.e(TAG, "onHomePressed: ");
int is_activation = Settings.Global.getInt(getContentResolver(), "uiui_activation", 0); int is_activation = Settings.Global.getInt(getContentResolver(), CommonConfig.UIUI_ACTIVATION_KEY, 0);
Log.e(TAG, "onHomePressed: is_activation = " + is_activation); Log.e(TAG, "onHomePressed: is_activation = " + is_activation);
if (is_activation == 0) { if (is_activation == 0) {
LauncherUtils.openLauncher3(MainActivity.this); LauncherUtils.openLauncher3(MainActivity.this);
@@ -461,12 +462,15 @@ public class MainActivity extends BaseActivity implements MainContact.MainView {
@Override @Override
protected void onRestart() { protected void onRestart() {
super.onRestart(); super.onRestart();
Log.e(TAG, "onRestart: ");
mMainPresenter.sendAPPUsage(); mMainPresenter.sendAPPUsage();
mMainPresenter.sendRunningInfo();
} }
@Override @Override
protected void onPause() { protected void onPause() {
super.onPause(); super.onPause();
Log.e(TAG, "onPause: ");
if (mHomeWatcher != null) { if (mHomeWatcher != null) {
mHomeWatcher.stopWatch();// 在销毁时停止监听,不然会报错的。 mHomeWatcher.stopWatch();// 在销毁时停止监听,不然会报错的。
} }
@@ -475,6 +479,7 @@ public class MainActivity extends BaseActivity implements MainContact.MainView {
@Override @Override
protected void onStop() { protected void onStop() {
super.onStop(); super.onStop();
Log.e(TAG, "onStop: ");
AppUsedTimeUtils.getInstance().setEndTime(System.currentTimeMillis()); AppUsedTimeUtils.getInstance().setEndTime(System.currentTimeMillis());
} }

View File

@@ -56,57 +56,57 @@ public class MainPresenter implements MainContact.Presenter {
@Override @Override
public void getSystemSettings() { public void getSystemSettings() {
NetInterfaceManager.getInstance().getSystemSettings(true, getLifecycle(), new NetInterfaceManager.ContactCallback() { // NetInterfaceManager.getInstance().getSystemSettings(true, getLifecycle(), new NetInterfaceManager.ContactCallback() {
@Override // @Override
public void setContact(List<Contact> contactList) { // public void setContact(List<Contact> contactList) {
Intent intent = new Intent("setting_sos"); // Intent intent = new Intent("setting_sos");
mContext.sendBroadcast(intent); // mContext.sendBroadcast(intent);
} // }
//
@Override // @Override
public void setEmergencyContact(List<Contact> emergencyContact) { // public void setEmergencyContact(List<Contact> emergencyContact) {
//
} // }
//
@Override // @Override
public void setEmpty() { // public void setEmpty() {
//
} // }
//
@Override // @Override
public void onComplete() { // public void onComplete() {
//
// }
// });
mView.setSystemSettings(); mView.setSystemSettings();
} }
});
}
@Override @Override
public void getDesktopLayout() { public void getDesktopLayout() {
NetInterfaceManager.getInstance().getDesktopLayoutObservable() // NetInterfaceManager.getInstance().getDesktopLayoutObservable()
.compose(RxLifecycle.bindUntilEvent(lifecycle, ActivityEvent.DESTROY)) // .compose(RxLifecycle.bindUntilEvent(lifecycle, ActivityEvent.DESTROY))
.subscribe(new Observer<BaseResponse<List<NetDesktopIcon>>>() { // .subscribe(new Observer<BaseResponse<List<NetDesktopIcon>>>() {
@Override // @Override
public void onSubscribe(@NonNull Disposable d) { // public void onSubscribe(@NonNull Disposable d) {
Log.e("getDesktopLayout", "onSubscribe: "); // Log.e("getDesktopLayout", "onSubscribe: ");
} // }
//
@Override // @Override
public void onNext(@NonNull BaseResponse<List<NetDesktopIcon>> listBaseResponse) { // public void onNext(@NonNull BaseResponse<List<NetDesktopIcon>> listBaseResponse) {
Log.e("getDesktopLayout", "onNext: " + listBaseResponse); // Log.e("getDesktopLayout", "onNext: " + listBaseResponse);
} // }
//
@Override // @Override
public void onError(@NonNull Throwable e) { // public void onError(@NonNull Throwable e) {
Log.e("getDesktopLayout", "onError: " + e.getMessage()); // Log.e("getDesktopLayout", "onError: " + e.getMessage());
onComplete(); // onComplete();
} // }
//
@Override // @Override
public void onComplete() { // public void onComplete() {
Log.e("getDesktopLayout", "onComplete: "); // Log.e("getDesktopLayout", "onComplete: ");
} // }
}); // });
} }
@Override @Override

View File

@@ -18,9 +18,13 @@ import com.trello.rxlifecycle4.android.RxLifecycleAndroid;
import io.reactivex.rxjava3.core.Observable; import io.reactivex.rxjava3.core.Observable;
import io.reactivex.rxjava3.subjects.BehaviorSubject; import io.reactivex.rxjava3.subjects.BehaviorSubject;
public class BaseFragment extends Fragment implements LifecycleProvider<FragmentEvent> { public abstract class BaseFragment extends Fragment implements LifecycleProvider<FragmentEvent> {
public final BehaviorSubject<FragmentEvent> lifecycleSubject = BehaviorSubject.create(); public final BehaviorSubject<FragmentEvent> lifecycleSubject = BehaviorSubject.create();
protected boolean isViewInitiated;
protected boolean isVisibleToUser;
protected boolean isDataInitiated;
@Override @Override
@NonNull @NonNull
@CheckResult @CheckResult
@@ -56,6 +60,35 @@ public class BaseFragment extends Fragment implements LifecycleProvider<Fragment
lifecycleSubject.onNext(FragmentEvent.CREATE); lifecycleSubject.onNext(FragmentEvent.CREATE);
} }
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
isViewInitiated = true;
prepareFetchData();
}
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
this.isVisibleToUser = isVisibleToUser;
prepareFetchData();
}
public abstract void fetchData();
public boolean prepareFetchData() {
return prepareFetchData(false);
}
public boolean prepareFetchData(boolean forceUpdate) {
if (isVisibleToUser && isViewInitiated && (!isDataInitiated || forceUpdate)) {
fetchData();
isDataInitiated = true;
return true;
}
return false;
}
@Override @Override
@CallSuper @CallSuper
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {

View File

@@ -0,0 +1,12 @@
package com.uiui.aios.config;
public class CommonConfig {
/*是否激活接口请求缓存*/
public static final String ACTIVATIONBEAN_KEY = "UIUI_ACTIVATIONBEAN_KEY";
/*是否激活*/
public static final String UIUI_ACTIVATION_KEY = "uiui_activation";
/*激活码类型*/
public static final String UIUI_CODE_TYPE_KEY = "uiui_code_type";
/*体验到期时间戳*/
public static final String UIUI_EXPIRE_TIME_KEY = "uiui_expire_time";
}

View File

@@ -26,6 +26,7 @@ import com.uiui.aios.activity.code.HealthCodeActivity;
import com.uiui.aios.base.BaseFragment; import com.uiui.aios.base.BaseFragment;
import com.uiui.aios.bean.BaseResponse; import com.uiui.aios.bean.BaseResponse;
import com.uiui.aios.bean.DesktopIcon; import com.uiui.aios.bean.DesktopIcon;
import com.uiui.aios.config.CommonConfig;
import com.uiui.aios.dialog.CustomDialog; import com.uiui.aios.dialog.CustomDialog;
import com.uiui.aios.dialog.PasswordDialog; import com.uiui.aios.dialog.PasswordDialog;
import com.uiui.aios.network.NetInterfaceManager; import com.uiui.aios.network.NetInterfaceManager;
@@ -99,6 +100,11 @@ public class AppListFragment extends BaseFragment {
} }
} }
@Override
public void fetchData() {
}
private View rootView; private View rootView;
@Override @Override
@@ -181,7 +187,7 @@ public class AppListFragment extends BaseFragment {
Log.e(TAG, "onItemClick: " + desktopIcon.getPackageName()); Log.e(TAG, "onItemClick: " + desktopIcon.getPackageName());
switch (desktopIcon.getPackageName()) { switch (desktopIcon.getPackageName()) {
case "aios.exit": case "aios.exit":
int is_activation = Settings.Global.getInt(mContext.getContentResolver(), "uiui_activation", 0); int is_activation = Settings.Global.getInt(mContext.getContentResolver(), CommonConfig.UIUI_ACTIVATION_KEY, 0);
if (is_activation == 0) { if (is_activation == 0) {
LauncherUtils.openLauncher3(mContext); LauncherUtils.openLauncher3(mContext);
} else { } else {

View File

@@ -176,6 +176,11 @@ public class SecondFragment extends BaseFragment implements NetworkUtils.OnNetwo
NetworkUtils.registerNetworkStatusChangedListener(this); NetworkUtils.registerNetworkStatusChangedListener(this);
} }
@Override
public void fetchData() {
}
@Override @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) { Bundle savedInstanceState) {

View File

@@ -11,6 +11,7 @@ import java.util.List;
public class CustomContact { public class CustomContact {
public interface Presenter extends BasePresenter<CustomView> { public interface Presenter extends BasePresenter<CustomView> {
void getNetSnIsActivation();
void getSnIsActivation(); void getSnIsActivation();
void getSnInfo(); void getSnInfo();
void getUserAvatarInfo(); void getUserAvatarInfo();
@@ -18,6 +19,7 @@ public class CustomContact {
} }
public interface CustomView extends BaseView { public interface CustomView extends BaseView {
void setNetSnIsActivation(boolean activation);
void setSnIsActivation(boolean activation); void setSnIsActivation(boolean activation);
void setSnInfo(SnInfo snInfo); void setSnInfo(SnInfo snInfo);
void setUserAvatarInfo(UserAvatarInfo userAvatarInfo); void setUserAvatarInfo(UserAvatarInfo userAvatarInfo);

View File

@@ -61,6 +61,7 @@ import com.uiui.aios.bean.Contact;
import com.uiui.aios.bean.HealthCode; import com.uiui.aios.bean.HealthCode;
import com.uiui.aios.bean.SnInfo; import com.uiui.aios.bean.SnInfo;
import com.uiui.aios.bean.UserAvatarInfo; import com.uiui.aios.bean.UserAvatarInfo;
import com.uiui.aios.config.CommonConfig;
import com.uiui.aios.dialog.SingleDialog; import com.uiui.aios.dialog.SingleDialog;
import com.uiui.aios.disklrucache.CacheHelper; import com.uiui.aios.disklrucache.CacheHelper;
import com.uiui.aios.manager.AmapManager; import com.uiui.aios.manager.AmapManager;
@@ -91,17 +92,19 @@ import butterknife.ButterKnife;
* create an instance of this fragment. * create an instance of this fragment.
*/ */
public class CustomFragment extends BaseFragment implements CustomContact.CustomView, NetworkUtils.OnNetworkStatusChangedListener { public class CustomFragment extends BaseFragment implements CustomContact.CustomView, NetworkUtils.OnNetworkStatusChangedListener {
private static final String TAG = CustomFragment.class.getSimpleName();
// @BindView(R.id.cl_alarm) // @BindView(R.id.cl_alarm)
// ConstraintLayout cl_alarm; // ConstraintLayout cl_alarm;
@BindView(R.id.cl_weather) @BindView(R.id.cl_weather)
ConstraintLayout cl_weather; ConstraintLayout cl_weather;
@BindView(R.id.cl_activation) @BindView(R.id.cl_activation)
ConstraintLayout cl_activation; ConstraintLayout cl_activation;
@BindView(R.id.cl_clean) @BindView(R.id.cl_clean)
ConstraintLayout cl_shared_space; ConstraintLayout cl_clean;
@BindView(R.id.cl_sos) @BindView(R.id.cl_sos)
ConstraintLayout cl_soso; ConstraintLayout cl_sos;
@BindView(R.id.cl_guard) @BindView(R.id.cl_guard)
ConstraintLayout cl_guard; ConstraintLayout cl_guard;
@BindView(R.id.cl_health) @BindView(R.id.cl_health)
@@ -133,8 +136,8 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
CircleProgressView cpv; CircleProgressView cpv;
// @BindView(R.id.iv_charging) // @BindView(R.id.iv_charging)
// ImageView iv_charging; // ImageView iv_charging;
@BindView(R.id.rv_noti) // @BindView(R.id.rv_noti)
RecyclerView rv_noti; // RecyclerView rv_noti;
// @BindView(R.id.rv_clock) // @BindView(R.id.rv_clock)
// RecyclerView rv_clock; // RecyclerView rv_clock;
// @BindView(R.id.wifi_ssid) // @BindView(R.id.wifi_ssid)
@@ -154,13 +157,12 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
@BindView(R.id.tv_time) @BindView(R.id.tv_time)
TextView tv_time; TextView tv_time;
private String TAG = CustomFragment.class.getSimpleName();
// private int[] mShaderColors = new int[]{0xFFfa3db5, 0xFFF8867E, 0xFFF79F6B, 0xFFF79F6B, 0xFFF79F6B, 0xFFF8867E, 0xFFfa3db5}; // private int[] mShaderColors = new int[]{0xFFfa3db5, 0xFFF8867E, 0xFFF79F6B, 0xFFF79F6B, 0xFFF79F6B, 0xFFF8867E, 0xFFfa3db5};
private int[] mShaderColors = new int[]{0xFF27602f, 0xFF27602f, 0xFF27602f, 0xFF27602f, 0xFF27602f, 0xFF27602f, 0xFF27602f}; private int[] mShaderColors = new int[]{0xFF27602f, 0xFF27602f, 0xFF27602f, 0xFF27602f, 0xFF27602f, 0xFF27602f, 0xFF27602f};
private int[] mShaderColorsRed = new int[]{0xFFFF0000, 0xFFFF0000, 0xFFFF0000, 0xFFFF0000, 0xFFFF0000, 0xFFFF0000, 0xFFFF0000}; private int[] mShaderColorsRed = new int[]{0xFFFF0000, 0xFFFF0000, 0xFFFF0000, 0xFFFF0000, 0xFFFF0000, 0xFFFF0000, 0xFFFF0000};
private View rootView; private View rootView;
private List<AlarmItem> alarmItemList; private List<AlarmItem> alarmItemList;
private NotificationAdapter notificationAdapter; // private NotificationAdapter notificationAdapter;
// private AlarmClockAdapter alarmClockAdapter; // private AlarmClockAdapter alarmClockAdapter;
private SOSNnmberAdapter sosNnmberAdapter; private SOSNnmberAdapter sosNnmberAdapter;
private MMKV mMMKV; private MMKV mMMKV;
@@ -214,8 +216,14 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
mParam2 = getArguments().getString(ARG_PARAM2); mParam2 = getArguments().getString(ARG_PARAM2);
} }
mMMKV = MMKV.defaultMMKV(); mMMKV = MMKV.defaultMMKV();
} }
@Override
public void fetchData() {
Log.e(TAG, "fetchData: ");
initData();
}
@Override @Override
public void onDisconnected() { public void onDisconnected() {
@@ -269,7 +277,6 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
} }
} }
private void registerAlarmClockReceiver() { private void registerAlarmClockReceiver() {
if (null == mAlarmClockReceiver) { if (null == mAlarmClockReceiver) {
mAlarmClockReceiver = new AlarmClockReceiver(); mAlarmClockReceiver = new AlarmClockReceiver();
@@ -291,7 +298,7 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
Handler.getMain().postDelayed(new Runnable() { Handler.getMain().postDelayed(new Runnable() {
@Override @Override
public void run() { public void run() {
getAlarmClock(); mCustomPresenter.getAlarmClock();
} }
}, 3456); }, 3456);
} }
@@ -357,9 +364,9 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
} }
}; };
@Override @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
Bundle savedInstanceState) {
// Inflate the layout for this fragment // Inflate the layout for this fragment
rootView = inflater.inflate(R.layout.fragment_custom, container, false); rootView = inflater.inflate(R.layout.fragment_custom, container, false);
mContext = (Activity) rootView.getContext(); mContext = (Activity) rootView.getContext();
@@ -370,7 +377,6 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
mCRv = mContext.getContentResolver(); mCRv = mContext.getContentResolver();
ButterKnife.bind(this, rootView); ButterKnife.bind(this, rootView);
initView(); initView();
initData();
return rootView; return rootView;
} }
@@ -405,24 +411,28 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
cl_guard.setOnClickListener(new View.OnClickListener() { cl_guard.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View view) { public void onClick(View view) {
if (checkExpired()) {
showExpired();
} else {
getAlarm(); getAlarm();
} }
});
notificationAdapter = new NotificationAdapter();
notificationAdapter.setOnClickListener(new NotificationAdapter.OnClickListener() {
@Override
public void onClick() {
getAlarm();
} }
}); });
rv_noti.setOnClickListener(new View.OnClickListener() { // notificationAdapter = new NotificationAdapter();
@Override // notificationAdapter.setOnClickListener(new NotificationAdapter.OnClickListener() {
public void onClick(View view) { // @Override
getAlarm(); // public void onClick() {
} // getAlarm();
}); // }
rv_noti.setLayoutManager(new LinearLayoutManager(mContext)); // });
rv_noti.setAdapter(notificationAdapter); // rv_noti.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View view) {
// getAlarm();
// }
// });
// rv_noti.setLayoutManager(new LinearLayoutManager(mContext));
// rv_noti.setAdapter(notificationAdapter);
if (isWifiConnect()) { if (isWifiConnect()) {
// wifi_ssid.setText(getConnectWifiSsid()); // wifi_ssid.setText(getConnectWifiSsid());
} else { } else {
@@ -431,17 +441,25 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
sosNnmberAdapter = new SOSNnmberAdapter(); sosNnmberAdapter = new SOSNnmberAdapter();
rv_sos.setLayoutManager(new LinearLayoutManager(mContext)); rv_sos.setLayoutManager(new LinearLayoutManager(mContext));
rv_sos.setAdapter(sosNnmberAdapter); rv_sos.setAdapter(sosNnmberAdapter);
cl_soso.setOnClickListener(new View.OnClickListener() { cl_sos.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
if (checkExpired()) {
showExpired();
} else {
checkSosNumber(); checkSosNumber();
} }
}
}); });
cl_weather.setOnClickListener(new View.OnClickListener() { cl_weather.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View view) { public void onClick(View view) {
if (checkExpired()) {
showExpired();
} else {
startActivity(new Intent(mContext, WeatherActivity.class)); startActivity(new Intent(mContext, WeatherActivity.class));
} }
}
}); });
cl_activation.setOnClickListener(new View.OnClickListener() { cl_activation.setOnClickListener(new View.OnClickListener() {
@Override @Override
@@ -449,24 +467,14 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
ApkUtils.openApp(mContext, "com.uiui.sn"); ApkUtils.openApp(mContext, "com.uiui.sn");
} }
}); });
cl_shared_space.setOnClickListener(new View.OnClickListener() { cl_clean.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
if (checkExpired()) {
showExpired();
} else {
killBackgroundApp(); killBackgroundApp();
// SingleDialog dialog = new SingleDialog(mContext); }
// dialog.setTitle("温馨提示")
// .setMessage("此功能暂未上线")
// .setPositive("确定")
//// .setNegtive("拒绝")
//// .setSingle(true)
//
// .setOnClickBottomListener(new SingleDialog.OnClickBottomListener() {
// @Override
// public void onPositiveClick() {
// dialog.dismiss();
// }
// });
// dialog.show();
} }
}); });
cl_health.setOnClickListener(new View.OnClickListener() { cl_health.setOnClickListener(new View.OnClickListener() {
@@ -478,18 +486,29 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
cl_contact.setOnClickListener(new View.OnClickListener() { cl_contact.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
if (checkExpired()) {
showExpired();
} else {
checkContact(); checkContact();
} }
}
}); });
cl_ai.setOnClickListener(new View.OnClickListener() { cl_ai.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
if (checkExpired()) {
showExpired();
} else {
openScheme(SchemeUtils.SCHEME_HAND); openScheme(SchemeUtils.SCHEME_HAND);
} }
}
}); });
cl_app.setOnClickListener(new View.OnClickListener() { cl_app.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View view) { public void onClick(View view) {
if (checkExpired()) {
showExpired();
} else {
if (TextUtils.isEmpty(quickAppPackagesName)) { if (TextUtils.isEmpty(quickAppPackagesName)) {
int is_quick = Settings.Global.getInt(mContext.getContentResolver(), QuickAppActivity.QUICK_APP_ENABLED_KEY, 0); int is_quick = Settings.Global.getInt(mContext.getContentResolver(), QuickAppActivity.QUICK_APP_ENABLED_KEY, 0);
if (is_quick == 0) { if (is_quick == 0) {
@@ -499,6 +518,7 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
ApkUtils.openPackage(mContext, quickAppPackagesName); ApkUtils.openPackage(mContext, quickAppPackagesName);
} }
} }
}
}); });
cl_app.setOnLongClickListener(new View.OnLongClickListener() { cl_app.setOnLongClickListener(new View.OnLongClickListener() {
@Override @Override
@@ -515,12 +535,61 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
cl_appstore.setOnClickListener(new View.OnClickListener() { cl_appstore.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View view) { public void onClick(View view) {
if (checkExpired()) {
showExpired();
} else {
ApkUtils.openApp(mContext, "com.uiui.appstore"); ApkUtils.openApp(mContext, "com.uiui.appstore");
} }
}
}); });
refreshMemory(); refreshMemory();
} }
private void showExpired() {
SingleDialog dialog = new SingleDialog(mContext);
dialog.setTitle("温馨提示")
.setMessage("体验时间已到期,请激活")
.setPositive("确定")
// .setNegtive("拒绝")
// .setSingle(true)
.setOnClickBottomListener(new SingleDialog.OnClickBottomListener() {
@Override
public void onPositiveClick() {
ApkUtils.openApp(mContext, "com.uiui.sn");
dialog.dismiss();
}
});
dialog.show();
}
public interface Activation {
void ActivationCallback();
}
private boolean checkExpired() {
int is_activation = Settings.Global.getInt(mContext.getContentResolver(), CommonConfig.UIUI_ACTIVATION_KEY, 0);
int code_type = Settings.Global.getInt(mContext.getContentResolver(), CommonConfig.UIUI_CODE_TYPE_KEY, -1);
long expire_time = Settings.Global.getLong(mContext.getContentResolver(), CommonConfig.UIUI_EXPIRE_TIME_KEY, -1);
if (is_activation == 0) {
return true;
} else if (is_activation == 1) {
if (code_type == 0) {
if (expire_time > 0) {
long time = System.currentTimeMillis() / 1000;
return time > expire_time;
} else {
return true;
}
} else if (code_type == 1) {
return false;
} else {
return true;
}
} else {
return true;
}
}
private void checkSosNumber() { private void checkSosNumber() {
NetInterfaceManager.getInstance().getContactList(new NetInterfaceManager.ContactCallback() { NetInterfaceManager.getInstance().getContactList(new NetInterfaceManager.ContactCallback() {
@Override @Override
@@ -553,38 +622,49 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
} }
private void checkContact() { private void checkContact() {
NetInterfaceManager.getInstance().getContactList(new NetInterfaceManager.ContactCallback() { // NetInterfaceManager.getInstance().getContactList(new NetInterfaceManager.ContactCallback() {
@Override // @Override
public void setContact(List<Contact> contactList) { // public void setContact(List<Contact> contactList) {
// if (contactList == null || contactList.size() == 0) { //// if (contactList == null || contactList.size() == 0) {
// showNoData("温馨提示", "请在小程序上设置通讯录"); //// showNoData("温馨提示", "请在小程序上设置通讯录");
// } else { //// } else {
// startActivity(new Intent(mContext, ContactActivity.class)); //// startActivity(new Intent(mContext, ContactActivity.class));
//// }
// } // }
} //
// @Override
@Override // public void setEmergencyContact(List<Contact> emergencyContact) {
public void setEmergencyContact(List<Contact> emergencyContact) { //
// }
} //
// @Override
@Override // public void setEmpty() {
public void setEmpty() { //// showNoData("温馨提示", "请在小程序上设置通讯录");
// showNoData("温馨提示", "请在小程序上设置通讯录"); // }
} //
// @Override
@Override // public void onComplete() {
public void onComplete() { //
// }
// });
startActivity(new Intent(mContext, ContactActivity.class)); startActivity(new Intent(mContext, ContactActivity.class));
} }
});
}
private void initData() { private void initData() {
mCustomPresenter.getSnIsActivation(); mCustomPresenter.getSnIsActivation();
initAmap(); initAmap();
// getAlarmClock(); }
@Override
public void setNetSnIsActivation(boolean activation) {
if (activation) {
cl_weather.setVisibility(View.VISIBLE);
cl_activation.setVisibility(View.GONE);
} else {
cl_weather.setVisibility(View.GONE);
cl_activation.setVisibility(View.VISIBLE);
}
mCustomPresenter.getSnInfo();
} }
@Override @Override
@@ -596,7 +676,6 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
cl_weather.setVisibility(View.GONE); cl_weather.setVisibility(View.GONE);
cl_activation.setVisibility(View.VISIBLE); cl_activation.setVisibility(View.VISIBLE);
} }
mCustomPresenter.getSnInfo();
} }
@Override @Override
@@ -625,14 +704,7 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
@Override @Override
public void setAlarmClock(List<AlarmClockData> clockDataList) { public void setAlarmClock(List<AlarmClockData> clockDataList) {
if (clockDataList != null && clockDataList.size() != 0) {
notificationAdapter.setDataList(clockDataList);
rv_noti.setVisibility(View.VISIBLE);
iv_note_nodata.setVisibility(View.GONE);
} else {
rv_noti.setVisibility(View.GONE);
iv_note_nodata.setVisibility(View.VISIBLE);
}
} }
@Override @Override
@@ -648,8 +720,6 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
@Override @Override
public void onResume() { public void onResume() {
super.onResume(); super.onResume();
// setAlarm();
getAlarmClock();
setSosNumber(); setSosNumber();
setQuickApp(); setQuickApp();
mCustomPresenter.getSnIsActivation(); mCustomPresenter.getSnIsActivation();
@@ -686,7 +756,6 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
.setPositive("确定") .setPositive("确定")
// .setNegtive("拒绝") // .setNegtive("拒绝")
// .setSingle(true) // .setSingle(true)
.setOnClickBottomListener(new SingleDialog.OnClickBottomListener() { .setOnClickBottomListener(new SingleDialog.OnClickBottomListener() {
@Override @Override
public void onPositiveClick() { public void onPositiveClick() {
@@ -735,18 +804,6 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
} }
} }
private void setAlarm() {
if (rootView == null) return;
if (alarmItemList == null) {
// tv_add.setVisibility(View.VISIBLE);
// rv_clock.setVisibility(View.GONE);
} else {
// tv_add.setVisibility(View.GONE);
// rv_clock.setVisibility(View.VISIBLE);
// alarmClockAdapter.setAlarmItemList(alarmItemList);
}
}
private void initAmap() { private void initAmap() {
LocationClient locationClient = AmapManager.getInstance().getLocationClient(); LocationClient locationClient = AmapManager.getInstance().getLocationClient();
locationClient.stop(); locationClient.stop();
@@ -782,7 +839,7 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
@Override @Override
public void setAlarmClockEmpty() { public void setAlarmClockEmpty() {
showNoData("温馨提示", "请在小程序上设置爱心闹钟"); showNoData("温馨提示", "请在小程序上设置爱心闹钟");
rv_noti.setVisibility(View.GONE); // rv_noti.setVisibility(View.GONE);
iv_note_nodata.setVisibility(View.VISIBLE); iv_note_nodata.setVisibility(View.VISIBLE);
} }
@@ -793,10 +850,6 @@ public class CustomFragment extends BaseFragment implements CustomContact.Custom
}); });
} }
private void getAlarmClock() {
}
private void showNoData(String title, String msg) { private void showNoData(String title, String msg) {
SingleDialog dialog = new SingleDialog(mContext); SingleDialog dialog = new SingleDialog(mContext);
dialog.setTitle(title) dialog.setTitle(title)

View File

@@ -11,7 +11,7 @@ import com.uiui.aios.alarm.AlarmUtils;
import com.uiui.aios.bean.AlarmClockData; import com.uiui.aios.bean.AlarmClockData;
import com.uiui.aios.bean.BaseResponse; import com.uiui.aios.bean.BaseResponse;
import com.uiui.aios.bean.SnInfo; import com.uiui.aios.bean.SnInfo;
import com.uiui.aios.bean.UserAvatarInfo; import com.uiui.aios.config.CommonConfig;
import com.uiui.aios.network.NetInterfaceManager; import com.uiui.aios.network.NetInterfaceManager;
import com.uiui.aios.utils.GsonUtils; import com.uiui.aios.utils.GsonUtils;
@@ -52,111 +52,87 @@ public class CustomPresenter implements CustomContact.Presenter {
this.mView = null; this.mView = null;
} }
@Override
public void getNetSnIsActivation() {
// NetInterfaceManager.getInstance()
// .getSnIsActivationObservable()
// .compose(RxLifecycle.bindUntilEvent(lifecycle, FragmentEvent.DESTROY))
// .subscribe(new Observer<BaseResponse>() {
// @Override
// public void onSubscribe(@NonNull Disposable d) {
// Log.e("getSnIsActivation", "onSubscribe: ");
// }
//
// @Override
// public void onNext(@NonNull BaseResponse baseResponse) {
// Log.e("getSnIsActivation", "onNext: " + baseResponse);
// if (baseResponse.code == 200) {
// JsonObject jsonObject = GsonUtils.getJsonObject(baseResponse.data.toString());
// int is_activation = jsonObject.get("is_activation").getAsInt();
// Settings.Global.putInt(mContext.getContentResolver(), CommonConfig.UIUI_ACTIVATION_KEY, is_activation);
// mView.setNetSnIsActivation(is_activation == 1);
// } else {
// mView.setNetSnIsActivation(false);
// }
// }
//
// @Override
// public void onError(@NonNull Throwable e) {
// Log.e("getSnIsActivation", "onError: " + e.getMessage());
// int is_activation = Settings.Global.getInt(mContext.getContentResolver(), CommonConfig.UIUI_ACTIVATION_KEY, 0);
// mView.setNetSnIsActivation(is_activation == 1);
// onComplete();
// }
//
// @Override
// public void onComplete() {
// Log.e("getSnIsActivation", "onComplete: ");
// }
// });
}
@Override @Override
public void getSnIsActivation() { public void getSnIsActivation() {
NetInterfaceManager.getInstance() int is_activation = Settings.Global.getInt(mContext.getContentResolver(), CommonConfig.UIUI_ACTIVATION_KEY, 0);
.getSnIsActivationObservable()
.compose(RxLifecycle.bindUntilEvent(lifecycle, FragmentEvent.DESTROY))
.subscribe(new Observer<BaseResponse>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
Log.e("getSnIsActivation", "onSubscribe: ");
}
@Override
public void onNext(@NonNull BaseResponse baseResponse) {
Log.e("getSnIsActivation", "onNext: " + baseResponse);
if (baseResponse.code == 200) {
JsonObject jsonObject = GsonUtils.getJsonObject(baseResponse.data.toString());
int is_activation = jsonObject.get("is_activation").getAsInt();
Settings.Global.putInt(mContext.getContentResolver(), "uiui_activation", is_activation);
mView.setSnIsActivation(is_activation == 1); mView.setSnIsActivation(is_activation == 1);
// mView.setSnIsActivation(false);
} else {
mView.setSnIsActivation(false);
}
}
@Override
public void onError(@NonNull Throwable e) {
Log.e("getSnIsActivation", "onError: " + e.getMessage());
int is_activation = Settings.Global.getInt(mContext.getContentResolver(), "uiui_activation", 0);
mView.setSnIsActivation(is_activation == 1);
onComplete();
}
@Override
public void onComplete() {
Log.e("getSnIsActivation", "onComplete: ");
}
});
} }
@Override @Override
public void getSnInfo() { public void getSnInfo() {
NetInterfaceManager.getInstance().getSnInfo(getLifecycle(), new NetInterfaceManager.SnInfoCallback() { mView.setSnInfo(null);
@Override
public void setSnInfo(SnInfo snInfo) {
mView.setSnInfo(snInfo);
}
});
} }
@Override @Override
public void getUserAvatarInfo() { public void getUserAvatarInfo() {
NetInterfaceManager.getInstance() mView.setUserAvatarInfo(null);
.getUserAvatarInfoControl()
.compose(RxLifecycle.bindUntilEvent(getLifecycle(), FragmentEvent.DESTROY))
.subscribe(new Observer<BaseResponse<UserAvatarInfo>>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
Log.e("getUserAvatarInfoControl", "onSubscribe: ");
}
@Override
public void onNext(@NonNull BaseResponse<UserAvatarInfo> userAvatarInfoBaseResponse) {
Log.e("getUserAvatarInfoControl", "onNext: " + userAvatarInfoBaseResponse);
mView.setUserAvatarInfo(userAvatarInfoBaseResponse.data);
}
@Override
public void onError(@NonNull Throwable e) {
Log.e("getUserAvatarInfoControl", "onError: " + e.getMessage());
onComplete();
}
@Override
public void onComplete() {
Log.e("getUserAvatarInfoControl", "onComplete: ");
}
});
} }
@Override @Override
public void getAlarmClock() { public void getAlarmClock() {
NetInterfaceManager.getInstance().getAlarmClockFragment(lifecycle, new NetInterfaceManager.AlarmClockCallback() { // NetInterfaceManager.getInstance().getAlarmClockFragment(lifecycle, new NetInterfaceManager.AlarmClockCallback() {
@Override // @Override
public void setAlarmClock(List<AlarmClockData> alarmClockList) { // public void setAlarmClock(List<AlarmClockData> alarmClockList) {
AlarmClockData alarmClockData = AlarmUtils.getInstance().getRecentAlarmClock(); // AlarmClockData alarmClockData = AlarmUtils.getInstance().getRecentAlarmClock();
if (alarmClockData != null) { // if (alarmClockData != null) {
List<AlarmClockData> data = new ArrayList<>(); // List<AlarmClockData> data = new ArrayList<>();
data.add(alarmClockData); // data.add(alarmClockData);
mView.setAlarmClock(data); // mView.setAlarmClock(data);
} else { // } else {
mView.setAlarmClock(null); // mView.setAlarmClock(null);
} // }
} // }
//
@Override // @Override
public void setAlarmClockEmpty() { // public void setAlarmClockEmpty() {
// mView.setAlarmClock(null);
// }
//
// @Override
// public void onError() {
//
// }
// });
mView.setAlarmClock(null); mView.setAlarmClock(null);
} }
@Override
public void onError() {
}
});
}
} }

View File

@@ -126,7 +126,7 @@ public class AmapManager {
mOption.setIsNeedLocationDescribe(true); // 可选默认false设置是否需要位置语义化结果可以在BDLocation mOption.setIsNeedLocationDescribe(true); // 可选默认false设置是否需要位置语义化结果可以在BDLocation
mOption.setIsNeedLocationPoiList(true); // 可选默认false设置是否需要POI结果可以在BDLocation mOption.setIsNeedLocationPoiList(true); // 可选默认false设置是否需要POI结果可以在BDLocation
mOption.SetIgnoreCacheException(false); // 可选默认false设置是否收集CRASH信息默认收集 mOption.SetIgnoreCacheException(false); // 可选默认false设置是否收集CRASH信息默认收集
mOption.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy); // 可选,默认高精度,设置定位模式,高精度,低功耗,仅设备,模糊 mOption.setLocationMode(LocationClientOption.LocationMode.Battery_Saving); // 可选,默认高精度,设置定位模式,高精度,低功耗,仅设备,模糊
mOption.setIsNeedAltitude(false); // 可选默认false设置定位时是否需要海拔信息默认不需要除基础定位版本都可用 mOption.setIsNeedAltitude(false); // 可选默认false设置定位时是否需要海拔信息默认不需要除基础定位版本都可用
// 可选,设置首次定位时选择定位速度优先还是定位准确性优先,默认为速度优先 // 可选,设置首次定位时选择定位速度优先还是定位准确性优先,默认为速度优先
// mOption.setFirstLocType(LocationClientOption.FirstLocType.SPEED_IN_FIRST_LOC); // mOption.setFirstLocType(LocationClientOption.FirstLocType.SPEED_IN_FIRST_LOC);

View File

@@ -930,7 +930,6 @@ public class NetInterfaceManager {
} else { } else {
if (callback != null) callback.setContact(setting_sos); if (callback != null) callback.setContact(setting_sos);
} }
if (callback != null) callback.onComplete();
} }
onComplete(); onComplete();
} }
@@ -1095,5 +1094,75 @@ public class NetInterfaceManager {
}; };
} }
public void getUserAvatarInfo(boolean refresh, BehaviorSubject<FragmentEvent> lifecycle, onCompleteCallback callback) {
ConnectMode connectMode = ConnectMode.ONE_MINUTE;
if (refresh) {
connectMode = ConnectMode.DEFAULT;
}
if (ConnectManager.getInstance().isNeedConnect(URLAddress.GET_ADMIN_SN_SETTING, connectMode)) {
getUserAvatarInfo(lifecycle, callback);
} else {
String jsonString = mCacheHelper.getAsString(URLAddress.GET_ADMIN_SN_SETTING);
//为 "" 是已经请求成功的
if (jsonString == null) {
getUserAvatarInfo(lifecycle, callback);
} else {
Gson gson = new Gson();
Type type = new TypeToken<UserAvatarInfo>() {
}.getType();
UserAvatarInfo userAvatarInfo = gson.fromJson(jsonString, type);
if (callback != null) {
callback.onComplete();
}
}
}
}
public void getUserAvatarInfo(BehaviorSubject<FragmentEvent> lifecycle, onCompleteCallback callback) {
NetInterfaceManager.getInstance()
.getUserAvatarInfoControl()
.compose(RxLifecycle.bindUntilEvent(lifecycle, FragmentEvent.DESTROY))
.subscribe(getUserAvatarInfoObserver(callback));
}
public void getUserAvatarInfo(onCompleteCallback callback) {
NetInterfaceManager.getInstance()
.getUserAvatarInfoControl()
.subscribe(getUserAvatarInfoObserver(callback));
}
public void getUserAvatarInfo() {
NetInterfaceManager.getInstance()
.getUserAvatarInfoControl()
.subscribe(getUserAvatarInfoObserver(null));
}
public Observer<BaseResponse<UserAvatarInfo>> getUserAvatarInfoObserver(onCompleteCallback callback) {
return new Observer<BaseResponse<UserAvatarInfo>>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
Log.e("getUserAvatarInfoControl", "onSubscribe: ");
}
@Override
public void onNext(@NonNull BaseResponse<UserAvatarInfo> userAvatarInfoBaseResponse) {
Log.e("getUserAvatarInfoControl", "onNext: " + userAvatarInfoBaseResponse);
} }
@Override
public void onError(@NonNull Throwable e) {
Log.e("getUserAvatarInfoControl", "onError: " + e.getMessage());
onComplete();
}
@Override
public void onComplete() {
Log.e("getUserAvatarInfoControl", "onComplete: ");
if (callback != null) {
callback.onComplete();
}
}
};
}
}

View File

@@ -49,7 +49,5 @@ public class URLAddress {
public static final String APP_ICON_UPDATE = "Control/appIconUpdate"; public static final String APP_ICON_UPDATE = "Control/appIconUpdate";
public static final String GET_USER_ID = "getUserId"; public static final String GET_USER_ID = "getUserId";
} }

View File

@@ -6,7 +6,9 @@ import android.content.Intent;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.Log; import android.util.Log;
import com.uiui.aios.network.NetInterfaceManager;
import com.uiui.aios.service.main.MainService; import com.uiui.aios.service.main.MainService;
import com.uiui.aios.tpush.MessageReceiver;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
@@ -68,7 +70,9 @@ public class BootReceiver extends BroadcastReceiver {
default: default:
break; break;
case BOOT_COMPLETED: case BOOT_COMPLETED:
MainService.mPresenter.getAlarmClock(); NetInterfaceManager.getInstance().getAlarmClock();
Intent alarmIntent = new Intent(MessageReceiver.SET_ALARMCLOCK);
context.sendBroadcast(alarmIntent);
case Intent.ACTION_BOOT_COMPLETED: case Intent.ACTION_BOOT_COMPLETED:
break; break;

View File

@@ -64,7 +64,7 @@ public class MainService extends BaseService implements MainSContact.MainSView,
@Override @Override
public void onConnected(NetworkUtils.NetworkType networkType) { public void onConnected(NetworkUtils.NetworkType networkType) {
mPresenter.getAlarmClock();
} }
@Override @Override

View File

@@ -244,11 +244,6 @@ public class ApkUtils {
return desktopIcons; return desktopIcons;
} }
public static boolean appIsDisable(Context context, String pkg) {
PackageManager pm = context.getPackageManager();
return pm.getApplicationEnabledSetting(pkg) == PackageManager.COMPONENT_ENABLED_STATE_DISABLED;
}
public static boolean isSystemApp(Context context, String pkg) { public static boolean isSystemApp(Context context, String pkg) {
PackageManager pm = context.getPackageManager(); PackageManager pm = context.getPackageManager();
ApplicationInfo applicationInfo = null; ApplicationInfo applicationInfo = null;
@@ -261,6 +256,11 @@ public class ApkUtils {
return (applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) > 0; return (applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) > 0;
} }
public static boolean appIsDisable(Context context, String pkg) {
PackageManager pm = context.getPackageManager();
return pm.getApplicationEnabledSetting(pkg) == PackageManager.COMPONENT_ENABLED_STATE_DISABLED;
}
public static boolean disableApp(Context context, String pkg) { public static boolean disableApp(Context context, String pkg) {
PackageManager pm = context.getPackageManager(); PackageManager pm = context.getPackageManager();
try { try {

View File

@@ -28,7 +28,6 @@
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
<LinearLayout <LinearLayout
@@ -169,10 +168,8 @@
android:src="@drawable/home_activation_icon" android:src="@drawable/home_activation_icon"
app:layout_constraintEnd_toEndOf="@+id/textView8" app:layout_constraintEnd_toEndOf="@+id/textView8"
app:layout_constraintTop_toBottomOf="@+id/textView8" /> app:layout_constraintTop_toBottomOf="@+id/textView8" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/cl_clean" android:id="@+id/cl_clean"
android:layout_width="0dp" android:layout_width="0dp"
@@ -337,7 +334,6 @@
android:layout_marginTop="@dimen/dp_2" android:layout_marginTop="@dimen/dp_2"
android:layout_marginEnd="@dimen/dp_2" android:layout_marginEnd="@dimen/dp_2"
android:layout_marginBottom="@dimen/dp_4" android:layout_marginBottom="@dimen/dp_4"
android:layout_weight="1" android:layout_weight="1"
android:background="@drawable/custom_bg_guard"> android:background="@drawable/custom_bg_guard">
@@ -435,7 +431,6 @@
android:textSize="@dimen/sp_11" android:textSize="@dimen/sp_11"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" /> app:layout_constraintEnd_toEndOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
@@ -485,7 +480,6 @@
app:layout_constraintEnd_toEndOf="@+id/iv_health" app:layout_constraintEnd_toEndOf="@+id/iv_health"
app:layout_constraintStart_toStartOf="@+id/iv_health" app:layout_constraintStart_toStartOf="@+id/iv_health"
app:layout_constraintTop_toBottomOf="@+id/iv_health" /> app:layout_constraintTop_toBottomOf="@+id/iv_health" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
@@ -594,7 +588,6 @@
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</LinearLayout> </LinearLayout>
</LinearLayout> </LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -524,7 +524,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:overScrollMode="never" android:overScrollMode="never"
android:visibility="gone" android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toTopOf="@+id/textView4"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />
<TextView <TextView

View File

@@ -9,7 +9,6 @@
android:id="@+id/root" android:id="@+id/root"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_margin="16dp"
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"
@@ -34,22 +33,24 @@
android:maxLines="1" android:maxLines="1"
android:singleLine="true" android:singleLine="true"
android:text="提醒时间" android:text="提醒时间"
android:layout_margin="@dimen/dp_4"
android:textColor="@color/white" android:textColor="@color/white"
android:textSize="@dimen/sp_14" android:textSize="@dimen/sp_14"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.226" />
<androidx.constraintlayout.widget.ConstraintLayout <androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/cl_voice" android:id="@+id/cl_voice"
android:layout_width="180dp" android:layout_width="@dimen/dp_100"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:background="@drawable/voice_background" android:background="@drawable/voice_background"
android:visibility="gone" android:visibility="visible"
app:layout_constraintStart_toStartOf="@+id/tv_title" app:layout_constraintEnd_toEndOf="@+id/tv_time"
app:layout_constraintStart_toStartOf="@+id/tv_time"
app:layout_constraintTop_toBottomOf="@+id/tv_time"> app:layout_constraintTop_toBottomOf="@+id/tv_time">
<TextView <TextView