version:1.1.9
fix: update:增加客服联系方式,优化主页显示
This commit is contained in:
@@ -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"
|
||||
|
||||
|
||||
@@ -248,6 +248,10 @@
|
||||
android:launchMode="singleTask"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/activity_styles" />
|
||||
<activity
|
||||
android:name=".activity.service.ServiceActivity"
|
||||
android:launchMode="singleTask"
|
||||
android:theme="@style/activity_styles" />
|
||||
|
||||
<!-- Intent received used to install shortcuts from other applications -->
|
||||
<receiver
|
||||
|
||||
@@ -68,6 +68,7 @@ import com.xxpatx.os.utils.TimeUtils;
|
||||
import com.xxpatx.os.utils.Utils;
|
||||
import com.xxpatx.os.utils.WiFiUtils;
|
||||
import com.xxpatx.os.view.ScaleCircleNavigator;
|
||||
import com.zackratos.ultimatebarx.ultimatebarx.java.UltimateBarX;
|
||||
|
||||
import net.lucode.hackware.magicindicator.ViewPagerHelper;
|
||||
|
||||
@@ -101,7 +102,7 @@ public class MainActivity extends BaseMvvmActivity<MainViewModel, ActivityMainBi
|
||||
private CameraManager cameraManager;
|
||||
private boolean flashing = false;
|
||||
|
||||
private DockAppAdapter mDockAppAdapter;
|
||||
// private DockAppAdapter mDockAppAdapter;
|
||||
private DockAppGridAdapter mDockAppGridAdapter;
|
||||
|
||||
@Override
|
||||
@@ -146,7 +147,8 @@ public class MainActivity extends BaseMvvmActivity<MainViewModel, ActivityMainBi
|
||||
Log.e(TAG, "initView: ");
|
||||
NetworkUtils.registerNetworkStatusChangedListener(this);
|
||||
|
||||
// UltimateBarX.addNavigationBarBottomPadding(mViewDataBinding.clBottom);
|
||||
// UltimateBarX.addStatusBarTopPadding(mViewDataBinding.root);
|
||||
UltimateBarX.addNavigationBarBottomPadding(mViewDataBinding.clBottom);
|
||||
toggleNotificationListenerService(this);
|
||||
|
||||
if (BuildConfig.DEBUG) {
|
||||
@@ -219,10 +221,10 @@ public class MainActivity extends BaseMvvmActivity<MainViewModel, ActivityMainBi
|
||||
NotificationService.setListener(this);
|
||||
updateIconBg();
|
||||
|
||||
View decorView = getWindow().getDecorView();
|
||||
decorView.setOnSystemUiVisibilityChangeListener(mOnSystemUiVisibilityChangeListener);
|
||||
// View decorView = getWindow().getDecorView();
|
||||
// decorView.setOnSystemUiVisibilityChangeListener(mOnSystemUiVisibilityChangeListener);
|
||||
// // 隐藏导航栏
|
||||
hideNavigationBar();
|
||||
// hideNavigationBar();
|
||||
|
||||
}
|
||||
|
||||
@@ -241,10 +243,10 @@ public class MainActivity extends BaseMvvmActivity<MainViewModel, ActivityMainBi
|
||||
// 隐藏导航栏
|
||||
private void hideNavigationBar() {
|
||||
View decorView = getWindow().getDecorView();
|
||||
int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
|
||||
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
|
||||
int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION;
|
||||
// | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
|
||||
// | View.SYSTEM_UI_FLAG_FULLSCREEN
|
||||
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;
|
||||
// | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;
|
||||
decorView.setSystemUiVisibility(uiOptions);
|
||||
}
|
||||
|
||||
@@ -482,12 +484,12 @@ public class MainActivity extends BaseMvvmActivity<MainViewModel, ActivityMainBi
|
||||
mDockAppGridAdapter = new DockAppGridAdapter(MainActivity.this);
|
||||
mViewDataBinding.gridView.setAdapter(mDockAppGridAdapter);
|
||||
|
||||
mDockAppAdapter = new DockAppAdapter();
|
||||
GridLayoutManager gridLayoutManager = new GridLayoutManager(this, 5);
|
||||
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this);
|
||||
linearLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
|
||||
mViewDataBinding.recyclerView.setLayoutManager(gridLayoutManager);
|
||||
mViewDataBinding.recyclerView.setAdapter(mDockAppAdapter);
|
||||
// mDockAppAdapter = new DockAppAdapter();
|
||||
// GridLayoutManager gridLayoutManager = new GridLayoutManager(this, 5);
|
||||
// LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this);
|
||||
// linearLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
|
||||
// mViewDataBinding.recyclerView.setLayoutManager(gridLayoutManager);
|
||||
// mViewDataBinding.recyclerView.setAdapter(mDockAppAdapter);
|
||||
String jsonString = mMMKV.decodeString(DockActivity.DOCK_APP_KEY);
|
||||
Log.e(TAG, "initView: dock = " + jsonString);
|
||||
if (!TextUtils.isEmpty(jsonString)) {
|
||||
@@ -497,23 +499,23 @@ public class MainActivity extends BaseMvvmActivity<MainViewModel, ActivityMainBi
|
||||
try {
|
||||
List<DockApp> dockApps = gson.fromJson(jsonString, type);
|
||||
if (dockApps != null && !dockApps.isEmpty()) {
|
||||
mDockAppAdapter.setDockApps(dockApps);
|
||||
// mDockAppAdapter.setDockApps(dockApps);
|
||||
mViewDataBinding.gridView.setNumColumns(dockApps.size());
|
||||
mDockAppGridAdapter.setDockApps(dockApps);
|
||||
} else {
|
||||
mDockAppAdapter.setDockApps(DockActivity.DEFAULT_DOCK_APP);
|
||||
// mDockAppAdapter.setDockApps(DockActivity.DEFAULT_DOCK_APP);
|
||||
mViewDataBinding.gridView.setNumColumns(DockActivity.DEFAULT_DOCK_APP.size());
|
||||
mDockAppGridAdapter.setDockApps(DockActivity.DEFAULT_DOCK_APP);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
Log.e(TAG, "initView: " + e.getMessage());
|
||||
mMMKV.encode(DockActivity.DOCK_APP_KEY, "");
|
||||
mDockAppAdapter.setDockApps(DockActivity.DEFAULT_DOCK_APP);
|
||||
// mDockAppAdapter.setDockApps(DockActivity.DEFAULT_DOCK_APP);
|
||||
mViewDataBinding.gridView.setNumColumns(DockActivity.DEFAULT_DOCK_APP.size());
|
||||
mDockAppGridAdapter.setDockApps(DockActivity.DEFAULT_DOCK_APP);
|
||||
}
|
||||
} else {
|
||||
mDockAppAdapter.setDockApps(DockActivity.DEFAULT_DOCK_APP);
|
||||
// mDockAppAdapter.setDockApps(DockActivity.DEFAULT_DOCK_APP);
|
||||
mViewDataBinding.gridView.setNumColumns(DockActivity.DEFAULT_DOCK_APP.size());
|
||||
mDockAppGridAdapter.setDockApps(DockActivity.DEFAULT_DOCK_APP);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
package com.xxpatx.os.activity.service;
|
||||
|
||||
import android.view.Gravity;
|
||||
import android.view.View;
|
||||
|
||||
import com.xxpatx.os.R;
|
||||
import com.xxpatx.os.base.mvvm.BaseMvvmActivity;
|
||||
import com.xxpatx.os.databinding.ActivityServiceBinding;
|
||||
import com.xxpatx.os.fragment.settings.SettingsFragment;
|
||||
|
||||
public class ServiceActivity extends BaseMvvmActivity<ServiceModelView, ActivityServiceBinding> {
|
||||
@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();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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<ActivityServiceBinding, ActivityEvent> {
|
||||
|
||||
@Override
|
||||
public ActivityServiceBinding getVDBinding() {
|
||||
return binding;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDestroy() {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -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":
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -427,6 +427,11 @@ public class ApkUtils {
|
||||
}
|
||||
}
|
||||
|
||||
DesktopIcon dailyIcon = new DesktopIcon();
|
||||
dailyIcon.setTitle("客服中心");
|
||||
dailyIcon.setPackage("xxpatx.os.service");
|
||||
desktopIcons.add(0, dailyIcon);
|
||||
|
||||
List<ShortcutPkgInfo> shortcutPkgInfos = ShortcutUtils.getInstance().getShortcutList();
|
||||
desktopIcons.addAll(shortcutPkgInfos);
|
||||
|
||||
|
||||
BIN
app/src/main/res/drawable-hdpi/icon_wechat_service.png
Normal file
BIN
app/src/main/res/drawable-hdpi/icon_wechat_service.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 15 KiB |
BIN
app/src/main/res/drawable-hdpi/wechat_service.png
Normal file
BIN
app/src/main/res/drawable-hdpi/wechat_service.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 89 KiB |
@@ -22,24 +22,33 @@
|
||||
android:scaleType="centerCrop"
|
||||
android:src="@drawable/main_background" />
|
||||
|
||||
<androidx.viewpager.widget.ViewPager
|
||||
android:id="@+id/viewPager"
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/root"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
app:layout_constraintBottom_toTopOf="@+id/magicIndicator"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<net.lucode.hackware.magicindicator.MagicIndicator
|
||||
android:id="@+id/magicIndicator"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="16dp"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:visibility="visible"
|
||||
app:layout_constraintBottom_toTopOf="@+id/cl_bottom"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent" />
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<androidx.viewpager.widget.ViewPager
|
||||
android:id="@+id/viewPager"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
app:layout_constraintBottom_toTopOf="@+id/magicIndicator"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<net.lucode.hackware.magicindicator.MagicIndicator
|
||||
android:id="@+id/magicIndicator"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="16dp"
|
||||
android:layout_centerHorizontal="true"
|
||||
android:visibility="visible"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/cl_bottom"
|
||||
@@ -60,14 +69,6 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/recyclerView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:visibility="gone"
|
||||
tools:itemCount="5"
|
||||
tools:listitem="@layout/item_dock_app" />
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -273,5 +274,6 @@
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
</layout>
|
||||
33
app/src/main/res/layout/activity_service.xml
Normal file
33
app/src/main/res/layout/activity_service.xml
Normal file
@@ -0,0 +1,33 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<layout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
tools:context=".activity.service.ServiceActivity">
|
||||
|
||||
<data>
|
||||
|
||||
<variable
|
||||
name="click"
|
||||
type="com.xxpatx.os.activity.service.ServiceActivity.BtnClick" />
|
||||
</data>
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:onClick="@{click::exit}">
|
||||
|
||||
<com.shehuan.niv.NiceImageView
|
||||
android:id="@+id/iv_qrcode"
|
||||
android:layout_width="300dp"
|
||||
android:layout_height="493dp"
|
||||
android:adjustViewBounds="true"
|
||||
android:scaleType="centerCrop"
|
||||
android:src="@drawable/wechat_service"
|
||||
app:corner_radius="8dp"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
</layout>
|
||||
@@ -15,6 +15,7 @@
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="330dp"
|
||||
android:layout_height="633dp"
|
||||
android:layout_marginTop="20dp"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="330dp"
|
||||
android:layout_height="633dp"
|
||||
android:layout_marginTop="20dp"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
@@ -26,9 +27,9 @@
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/cl_weather"
|
||||
android:layout_width="330dp"
|
||||
android:visibility="gone"
|
||||
android:layout_height="165dp"
|
||||
android:onClick="@{click::toWeather}"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
@@ -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">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_no_contact"
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<item name="colorPrimary">@color/colorPrimary</item>
|
||||
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
|
||||
<item name="colorAccent">@color/colorAccent</item>
|
||||
<item name="android:windowBackground">@color/colorPrimary</item>
|
||||
<item name="android:windowBackground">@color/transparent</item>
|
||||
</style>
|
||||
|
||||
<style name="AppThemeFitsSystem" parent="Theme.AppCompat.Light.NoActionBar">
|
||||
|
||||
Reference in New Issue
Block a user