diff --git a/app/build.gradle b/app/build.gradle index 08234f0..80e7222 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -15,8 +15,8 @@ android { applicationId "com.xxpatx.os" minSdkVersion 24 targetSdkVersion 29 - versionCode 1019 - versionName "1.1.8" + versionCode 1020 + versionName "1.1.9" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 9ab7812..009472a 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -248,6 +248,10 @@ android:launchMode="singleTask" android:screenOrientation="portrait" android:theme="@style/activity_styles" /> + { + @Override + protected int getLayoutId() { + return R.layout.activity_service; + } + + @Override + protected void initDataBinding() { + mViewModel.setCtx(this); + mViewModel.setLifecycle(getLifecycleSubject()); + mViewModel.setVDBinding(mViewDataBinding); + mViewDataBinding.setClick(new BtnClick()); + } + + @Override + protected void initView() { + hideNavigationBar(); + getWindow().setGravity(Gravity.CENTER); + } + + @Override + protected void initData() { + + } + + // 隐藏导航栏 + private void hideNavigationBar() { + View decorView = getWindow().getDecorView(); + int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION +// | View.SYSTEM_UI_FLAG_FULLSCREEN + | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION + | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; + decorView.setSystemUiVisibility(uiOptions); + } + + public class BtnClick { + public void exit(View view) { + finish(); + } + } +} diff --git a/app/src/main/java/com/xxpatx/os/activity/service/ServiceModelView.java b/app/src/main/java/com/xxpatx/os/activity/service/ServiceModelView.java new file mode 100644 index 0000000..4fb818c --- /dev/null +++ b/app/src/main/java/com/xxpatx/os/activity/service/ServiceModelView.java @@ -0,0 +1,19 @@ +package com.xxpatx.os.activity.service; + +import com.trello.rxlifecycle4.android.ActivityEvent; +import com.xxpatx.os.base.mvvm.BaseViewModel; +import com.xxpatx.os.databinding.ActivityServiceBinding; + +public class ServiceModelView extends BaseViewModel { + + @Override + public ActivityServiceBinding getVDBinding() { + return binding; + } + + @Override + public void onDestroy() { + + } + +} diff --git a/app/src/main/java/com/xxpatx/os/bean/DesktopIcon.java b/app/src/main/java/com/xxpatx/os/bean/DesktopIcon.java index 77dd3c3..791e346 100644 --- a/app/src/main/java/com/xxpatx/os/bean/DesktopIcon.java +++ b/app/src/main/java/com/xxpatx/os/bean/DesktopIcon.java @@ -98,6 +98,8 @@ public class DesktopIcon implements Serializable, Parcelable { switch (mPackage) { case AppManager.ADD_NAME: return context.getDrawable(R.drawable.home_icon_add); + case "xxpatx.os.service": + return context.getDrawable(R.drawable.icon_wechat_service); case "aios.daily.app": return context.getDrawable(R.drawable.icon_daily_app); case "aios.appstore": diff --git a/app/src/main/java/com/xxpatx/os/fragment/app/AppListFragment.java b/app/src/main/java/com/xxpatx/os/fragment/app/AppListFragment.java index d02672d..2ba2427 100644 --- a/app/src/main/java/com/xxpatx/os/fragment/app/AppListFragment.java +++ b/app/src/main/java/com/xxpatx/os/fragment/app/AppListFragment.java @@ -29,6 +29,7 @@ import com.xxpatx.os.BuildConfig; import com.xxpatx.os.R; import com.xxpatx.os.activity.screenlock.ScreenLockActivity; import com.xxpatx.os.activity.dailyapp.DailyAppActivity; +import com.xxpatx.os.activity.service.ServiceActivity; import com.xxpatx.os.base.BaseFragment; import com.xxpatx.os.bean.BaseResponse; import com.xxpatx.os.bean.DesktopIcon; @@ -134,7 +135,7 @@ public class AppListFragment extends BaseFragment { // if (mContext.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) { // gridLayout.set(3, 3); // } else { - gridLayout.set(2, 3); + gridLayout.set(2, 3); // } gridLayout.setGridAdapter(new MyGridLayout.GridAdatper() { @@ -169,7 +170,7 @@ public class AppListFragment extends BaseFragment { default: constraintLayout.setBackground(mContext.getDrawable(R.drawable.contact_card_backround1)); } - + DesktopIcon desktopIcon = mDesktopIcons.get(index); if (desktopIcon != null) { String pkg = desktopIcon.getPackage(); @@ -212,6 +213,7 @@ public class AppListFragment extends BaseFragment { // desktopIcon.setIcon(mContext.getResources().getDrawable(resID)); } } else { + iv.setImageDrawable(desktopIcon.getIcon(mContext)); } tv.setText(desktopIcon.getTitle()); @@ -251,6 +253,9 @@ public class AppListFragment extends BaseFragment { return; } switch (desktopIcon.getPackage()) { + case "xxpatx.os.service": + startActivity(new Intent(mContext, ServiceActivity.class)); + break; case "aios.daily.app": startActivity(new Intent(mContext, DailyAppActivity.class)); break; @@ -321,6 +326,7 @@ public class AppListFragment extends BaseFragment { case "com.xxpatx.sn": case "aios.daily.app": case "aios.appstore": + case "xxpatx.os.service": break; default: showHideDialog(desktopIcon); diff --git a/app/src/main/java/com/xxpatx/os/utils/ApkUtils.java b/app/src/main/java/com/xxpatx/os/utils/ApkUtils.java index 6eb2ca1..b081a31 100644 --- a/app/src/main/java/com/xxpatx/os/utils/ApkUtils.java +++ b/app/src/main/java/com/xxpatx/os/utils/ApkUtils.java @@ -427,6 +427,11 @@ public class ApkUtils { } } + DesktopIcon dailyIcon = new DesktopIcon(); + dailyIcon.setTitle("客服中心"); + dailyIcon.setPackage("xxpatx.os.service"); + desktopIcons.add(0, dailyIcon); + List shortcutPkgInfos = ShortcutUtils.getInstance().getShortcutList(); desktopIcons.addAll(shortcutPkgInfos); diff --git a/app/src/main/res/drawable-hdpi/icon_wechat_service.png b/app/src/main/res/drawable-hdpi/icon_wechat_service.png new file mode 100644 index 0000000..96bdfd2 Binary files /dev/null and b/app/src/main/res/drawable-hdpi/icon_wechat_service.png differ diff --git a/app/src/main/res/drawable-hdpi/wechat_service.png b/app/src/main/res/drawable-hdpi/wechat_service.png new file mode 100644 index 0000000..57dd6bb Binary files /dev/null and b/app/src/main/res/drawable-hdpi/wechat_service.png differ diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 5ac5181..028ca8e 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -22,24 +22,33 @@ android:scaleType="centerCrop" android:src="@drawable/main_background" /> - - - + app:layout_constraintTop_toTopOf="parent"> + + + + + + - - + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_service.xml b/app/src/main/res/layout/activity_service.xml new file mode 100644 index 0000000..4614f02 --- /dev/null +++ b/app/src/main/res/layout/activity_service.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_applist.xml b/app/src/main/res/layout/fragment_applist.xml index f9b135c..8530fdf 100644 --- a/app/src/main/res/layout/fragment_applist.xml +++ b/app/src/main/res/layout/fragment_applist.xml @@ -15,6 +15,7 @@ @@ -164,7 +165,7 @@ app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@+id/cl_weather" > + app:layout_constraintTop_toBottomOf="@+id/cl_weather"> @color/colorPrimary @color/colorPrimaryDark @color/colorAccent - @color/colorPrimary + @color/transparent