Browse Source

关于app 优化更新界面内容 / 定位广播调用优化

master
LiuSiXiang-007 1 year ago
parent
commit
3f61e241cb
  1. 5
      app/src/main/java/com/kanglai/push/ui/activity/AboutActivity.java
  2. 31
      app/src/main/java/com/kanglai/push/ui/adapter/PanelRecyclerAdapter.java
  3. 20
      app/src/main/java/com/kanglai/push/ui/fragment/UserFragment.java
  4. 30
      app/src/main/java/com/kanglai/push/ui/vm/AboutViewModel.java
  5. 2
      app/src/main/java/com/kanglai/push/ui/vm/LoginViewModel.java
  6. 3
      app/src/main/java/com/kanglai/push/util/AlarmReceiver.java
  7. 69
      app/src/main/res/layout/activity_about.xml
  8. 2
      library/core/src/main/res/values/strings.xml

5
app/src/main/java/com/kanglai/push/ui/activity/AboutActivity.java

@ -13,13 +13,14 @@ import com.kanglai.push.ui.vm.AboutViewModel; @@ -13,13 +13,14 @@ import com.kanglai.push.ui.vm.AboutViewModel;
/**
*<p>
* 关于
* 关于app
*</p>
*
* @Author: wangxiang4
* @since: 2022/10/24
*/
public class AboutActivity extends BaseActivity<ActivityAboutBinding, AboutViewModel> {
public class AboutActivity extends BaseActivity<ActivityAboutBinding, AboutViewModel>{
@Override
public int setContentView(Bundle savedInstanceState) {
return R.layout.activity_about;

31
app/src/main/java/com/kanglai/push/ui/adapter/UserRecyclerAdapter.java → app/src/main/java/com/kanglai/push/ui/adapter/PanelRecyclerAdapter.java

@ -11,15 +11,16 @@ import lombok.experimental.Accessors; @@ -11,15 +11,16 @@ import lombok.experimental.Accessors;
/**
*<p>
* 我的回收列表数据适配器
* 面板回收列表数据适配器
* 个人页头像下方的列表
*</p>
*
* @Author: wangxiang4
* @since: 2023/1/31
*/
public class UserRecyclerAdapter extends DefaultRecyclerAdapter {
public class PanelRecyclerAdapter extends DefaultRecyclerAdapter {
private List<UserEntity> mItemList;
private List<PanelEntity> mItemList;
private EventListener mEventListener;
@ -27,7 +28,7 @@ public class UserRecyclerAdapter extends DefaultRecyclerAdapter { @@ -27,7 +28,7 @@ public class UserRecyclerAdapter extends DefaultRecyclerAdapter {
@Accessors
@NoArgsConstructor
@AllArgsConstructor
public static class UserEntity {
public static class PanelEntity {
public String code;
@ -46,32 +47,32 @@ public class UserRecyclerAdapter extends DefaultRecyclerAdapter { @@ -46,32 +47,32 @@ public class UserRecyclerAdapter extends DefaultRecyclerAdapter {
public Boolean hidesLeftImage;
}
public UserRecyclerAdapter(List<UserEntity> mItemList){
public PanelRecyclerAdapter(List<PanelEntity> mItemList){
this.mItemList = mItemList;
}
public UserRecyclerAdapter(List<UserEntity> mItemList, Boolean hidesDisclosure) {
public PanelRecyclerAdapter(List<PanelEntity> mItemList, Boolean hidesDisclosure) {
super(null, null, hidesDisclosure, null);
this.mItemList = mItemList;
}
public UserRecyclerAdapter(List<UserEntity> mItemList, Boolean hidesDisclosure, Boolean hidesLeftImage) {
public PanelRecyclerAdapter(List<PanelEntity> mItemList, Boolean hidesDisclosure, Boolean hidesLeftImage) {
super(null, null, hidesDisclosure, hidesLeftImage);
this.mItemList = mItemList;
}
public UserRecyclerAdapter(List<UserEntity> mItemList,
Integer defaultImage,
Integer defaultBadge,
Boolean hidesDisclosure,
Boolean hidesLeftImage) {
public PanelRecyclerAdapter(List<PanelEntity> mItemList,
Integer defaultImage,
Integer defaultBadge,
Boolean hidesDisclosure,
Boolean hidesLeftImage) {
super(defaultImage, defaultBadge, hidesDisclosure, hidesLeftImage);
this.mItemList = mItemList;
}
public interface EventListener {
void onItemViewClicked(UserEntity userEntity);
void onItemViewClicked(PanelEntity userEntity);
}
@ -83,7 +84,7 @@ public class UserRecyclerAdapter extends DefaultRecyclerAdapter { @@ -83,7 +84,7 @@ public class UserRecyclerAdapter extends DefaultRecyclerAdapter {
@Override
public void onBindViewHolder(final ViewHolder viewHolder, final int position) {
super.onBindViewHolder(viewHolder, position);
final UserEntity item = mItemList.get(position);
final PanelEntity item = mItemList.get(position);
viewHolder.layoutContent.setOnClickListener(view -> onItemViewClick(item));
viewHolder.titleLabel.setText(item.title);
viewHolder.detailLabel.setText(item.detail);
@ -102,7 +103,7 @@ public class UserRecyclerAdapter extends DefaultRecyclerAdapter { @@ -102,7 +103,7 @@ public class UserRecyclerAdapter extends DefaultRecyclerAdapter {
}
}
private void onItemViewClick(UserEntity userEntity) {
private void onItemViewClick(PanelEntity userEntity) {
if (mEventListener != null && ObjectUtils.isNotEmpty(mItemList)) {
mEventListener.onItemViewClicked(userEntity);
}

20
app/src/main/java/com/kanglai/push/ui/fragment/UserFragment.java

@ -28,7 +28,7 @@ import com.kanglai.push.databinding.FragmentUserBinding; @@ -28,7 +28,7 @@ import com.kanglai.push.databinding.FragmentUserBinding;
import com.kanglai.push.entity.User;
import com.kanglai.push.util.LocationService;
import com.kanglai.push.ui.activity.AboutActivity;
import com.kanglai.push.ui.adapter.UserRecyclerAdapter;
import com.kanglai.push.ui.adapter.PanelRecyclerAdapter;
import com.kanglai.push.ui.vm.UserViewModel;
import com.kongzue.dialogx.DialogX;
import com.kongzue.dialogx.dialogs.MessageDialog;
@ -38,16 +38,16 @@ import java.util.List; @@ -38,16 +38,16 @@ import java.util.List;
/**
*<p>
* 我的
* 我的碎片页
*</p>
*
* @Author: entfrm开发团队-王翔
* @Date: 2022/7/15
*/
public class UserFragment extends BaseFragment<FragmentUserBinding, UserViewModel> implements UserRecyclerAdapter.EventListener {
public class UserFragment extends BaseFragment<FragmentUserBinding, UserViewModel> implements PanelRecyclerAdapter.EventListener {
private RecyclerView mRecyclerView;
private UserRecyclerAdapter mAdapter;
private PanelRecyclerAdapter mAdapter;
public ImageView avatar;
@ -77,12 +77,12 @@ public class UserFragment extends BaseFragment<FragmentUserBinding, UserViewMode @@ -77,12 +77,12 @@ public class UserFragment extends BaseFragment<FragmentUserBinding, UserViewMode
toolbarBack.setVisibility(View.INVISIBLE);
mRecyclerView = getView().findViewById(R.id.recycler_view);
// 设置列表
List<UserRecyclerAdapter.UserEntity> list = CollectionUtils.newArrayList(
new UserRecyclerAdapter.UserEntity().setCode("1").setTitle("关闭定位服务").setBadge(0).setImage(R.drawable.icon_about).setHidesLeftImage(true),
new UserRecyclerAdapter.UserEntity().setCode("2").setTitle("关于我们").setBadge(0).setImage(R.drawable.icon_about).setHidesLeftImage(true),
new UserRecyclerAdapter.UserEntity().setCode("3").setTitle("退出登录").setBadge(0).setImage(R.drawable.icon_exit).setHidesLeftImage(true)
List<PanelRecyclerAdapter.PanelEntity> list = CollectionUtils.newArrayList(
new PanelRecyclerAdapter.PanelEntity().setCode("1").setTitle("关闭定位服务").setBadge(0).setImage(R.drawable.icon_about).setHidesLeftImage(true),
new PanelRecyclerAdapter.PanelEntity().setCode("2").setTitle("关于我们").setBadge(0).setImage(R.drawable.icon_about).setHidesLeftImage(true),
new PanelRecyclerAdapter.PanelEntity().setCode("3").setTitle("退出登录").setBadge(0).setImage(R.drawable.icon_exit).setHidesLeftImage(true)
);
final UserRecyclerAdapter userRecyclerAdapter = new UserRecyclerAdapter(list);
final PanelRecyclerAdapter userRecyclerAdapter = new PanelRecyclerAdapter(list);
userRecyclerAdapter.setEventListener(this);
mAdapter = userRecyclerAdapter;
RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(getActivity());
@ -102,7 +102,7 @@ public class UserFragment extends BaseFragment<FragmentUserBinding, UserViewMode @@ -102,7 +102,7 @@ public class UserFragment extends BaseFragment<FragmentUserBinding, UserViewMode
}
@Override
public void onItemViewClicked(UserRecyclerAdapter.UserEntity userEntity) {
public void onItemViewClicked(PanelRecyclerAdapter.PanelEntity userEntity) {
/** 列表点击事件 */
switch (userEntity.code) {
case "1": // todo: 暂未定义内容 后续可用来测试

30
app/src/main/java/com/kanglai/push/ui/vm/AboutViewModel.java

@ -1,13 +1,19 @@ @@ -1,13 +1,19 @@
package com.kanglai.push.ui.vm;
import android.app.Application;
import android.os.Bundle;
import androidx.annotation.NonNull;
import androidx.databinding.ObservableField;
import androidx.lifecycle.LifecycleOwner;
import com.dolphin.core.binding.command.BindingCommand;
import com.kanglai.push.R;
import com.kanglai.push.ui.activity.DocumentActivity;
/**
*<p>
* 关于
* 关于APP
*</p>
*
* @Author: wangxiang4
@ -15,6 +21,13 @@ import androidx.lifecycle.LifecycleOwner; @@ -15,6 +21,13 @@ import androidx.lifecycle.LifecycleOwner;
*/
public class AboutViewModel extends ToolbarViewModel {
public ObservableField<String> document01 = new ObservableField("《友信APP客户端用户协议手册》"); // 用户协议
public ObservableField<String> document02 = new ObservableField("《友信APP客户端隐私保护指引》"); // 用户协议
/** 底部文字 */
public ObservableField<String> tit01 = new ObservableField("客服热线 400-1512-686");
public ObservableField<String> tit02 = new ObservableField("©2023-2024 康来生物科技有限公司 版权所有 — All Rights Reserved");
public ObservableField<String> tit03 = new ObservableField("大家的支持是我们工作的动力");
public AboutViewModel(@NonNull Application application) {
super(application);
}
@ -22,7 +35,20 @@ public class AboutViewModel extends ToolbarViewModel { @@ -22,7 +35,20 @@ public class AboutViewModel extends ToolbarViewModel {
@Override
public void onCreate(@NonNull LifecycleOwner owner) {
super.onCreate(owner);
super.setTitleText("关于");
super.setTitleText("关于"+ R.string.app_name);
}
public BindingCommand document01ClickCommand = new BindingCommand(() -> { // 用户手册
Bundle bundle = new Bundle();
bundle.putString("DOCUMENT_TYPE", "0");
startActivity(DocumentActivity.class, bundle);
});
public BindingCommand document02ClickCommand = new BindingCommand(() -> { // 隐私政策
Bundle bundle = new Bundle();
bundle.putString("DOCUMENT_TYPE", "1");
startActivity(DocumentActivity.class, bundle);
});
}

2
app/src/main/java/com/kanglai/push/ui/vm/LoginViewModel.java

@ -64,7 +64,7 @@ public class LoginViewModel extends BaseViewModel<LoginActivity> { @@ -64,7 +64,7 @@ public class LoginViewModel extends BaseViewModel<LoginActivity> {
public ObservableField<String> username = new ObservableField("");
/** 用户密码 */
public ObservableField<String> password = new ObservableField("123456");
// public ObservableField<String> password = new ObservableField("123456");
/** 电话号码 */
public ObservableField<String> phones = new ObservableField("");

3
app/src/main/java/com/kanglai/push/util/AlarmReceiver.java

@ -57,7 +57,8 @@ public class AlarmReceiver extends BroadcastReceiver implements AMapLocationList @@ -57,7 +57,8 @@ public class AlarmReceiver extends BroadcastReceiver implements AMapLocationList
LogUtils.i("--------------------------------AlarmReceiver---------------------------------------");
/** 上传之前需要判断一次用户登录状态 即 id 时候存在 */
locationConfigure(HistoryMsgUtil.noneId(),context);
locationConfigure(!HistoryMsgUtil.noneId(),context);
// locationConfigure(true,context);
}
/** 获取定位数据 */

69
app/src/main/res/layout/activity_about.xml

@ -16,17 +16,23 @@ @@ -16,17 +16,23 @@
layout="@layout/layout_toolbar"
binding:toolbarViewModel="@{viewModel.toolbarViewModel}" />
<ImageView
<!-- app logo -->
<LinearLayout
android:gravity="bottom|center"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="2"
android:padding="@dimen/dp_30"
android:src="@drawable/icon_app" />
android:layout_weight="1">
<ImageView
android:layout_width="@dimen/dp_96"
android:layout_height="@dimen/dp_96"
android:layout_centerInParent="true"
android:src="@drawable/icon_app" />
</LinearLayout>
<!-- app名字 版本号 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="3"
android:layout_height="wrap_content"
android:gravity="center|top"
android:orientation="vertical">
@ -35,39 +41,70 @@ @@ -35,39 +41,70 @@
android:layout_height="wrap_content"
android:text="@string/app_name"
android:textColor="@color/black"
android:textSize="24dp"
android:textSize="@dimen/dp_26"
android:letterSpacing="0.1"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="5dp"
android:letterSpacing="0.1"
android:text="@string/app_version"
android:textColor="@color/black"
android:textSize="18dp" />
android:textColor="@color/black40"
android:textSize="@dimen/dp_12" />
</LinearLayout>
<!-- 用户协议、隐私政策、软件更新 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="3"
android:gravity="center|bottom"
android:orientation="vertical">
<TextView
android:padding="@dimen/dp_5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@{viewModel.document01}"
binding:onClickCommand="@{viewModel.document01ClickCommand}"
android:textColor="@color/black40"
android:textSize="@dimen/dp_10" />
<TextView
android:padding="@dimen/dp_5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@{viewModel.document02}"
binding:onClickCommand="@{viewModel.document02ClickCommand}"
android:textColor="#576B95"
android:textSize="@dimen/dp_12" />
</LinearLayout>
<!-- 底部说明 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center|bottom"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="1dp"
android:text="©2023-2023 康来生物科技有限公司 版权所有 — All Rights Reserved"
android:text="@{viewModel.tit01}"
android:textColor="@color/black40"
android:textSize="@dimen/dp_10" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="1dp"
android:text="@{viewModel.tit02}"
android:textColor="@color/black40"
android:textSize="10dp" />
android:textSize="@dimen/dp_10" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="6dp"
android:text="大家的支持是我们工作的动力"
android:text="@{viewModel.tit03}"
android:textColor="@color/black40"
android:textSize="10dp" />
android:textSize="@dimen/dp_10" />
</LinearLayout>
</LinearLayout>
</layout>

2
library/core/src/main/res/values/strings.xml

@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
<resources>
<string name="app_name">友信</string>
<string name="app_version">exploit-1.0.1</string>
<string name="app_version">Version 1.0.1</string>
<string name="app_channel">kanglai-push</string>
<string name="crash_error_activity_error_occurred_explanation">发生意外错误。\n抱歉,给您带来不便。</string>
<string name="crash_error_activity_restart_app">重新启动</string>

Loading…
Cancel
Save