正在查看: 微商客 v2.1.2 应用的 BatchSendActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: 微商客 v2.1.2 应用的 BatchSendActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.jianzhen.wsk.ui.groupsend;
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Handler;
import android.os.Looper;
import android.view.View;
import android.view.accessibility.AccessibilityNodeInfo;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.activity.result.ActivityResult;
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.auxiliary.library.core.NodeExecutor;
import com.auxiliary.library.node.base.INode;
import com.auxiliary.library.node.base.PageNode;
import com.auxiliary.library.service.AuxiliaryService;
import com.auxiliary.library.service.IAccessibility;
import com.auxiliary.library.widget.ExecutorWindow;
import com.bumptech.glide.Glide;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.hjq.permissions.OnPermissionCallback;
import com.hjq.permissions.XXPermissions;
import com.jianzhen.wsk.BaseActivity;
import com.jianzhen.wsk.R;
import com.jianzhen.wsk.bean.FriendData;
import com.jianzhen.wsk.bean.TagAndGroupBean;
import com.jianzhen.wsk.net.api.Constant;
import com.jianzhen.wsk.ui.friendscircle.FriendSelectObjectTagActivity;
import com.jianzhen.wsk.utils.GlideEngine;
import com.jianzhen.wsk.utils.ImageSaveUtil;
import com.jianzhen.wsk.utils.ScriptLoadUtil;
import com.jianzhen.wsk.utils.SharedPreferencesUtil;
import com.jianzhen.wsk.utils.Utils;
import com.kongzue.dialogx.dialogs.PopNotification;
import com.luck.picture.lib.basic.PictureSelector;
import com.luck.picture.lib.config.SelectMimeType;
import com.luck.picture.lib.entity.LocalMedia;
import com.luck.picture.lib.interfaces.OnResultCallbackListener;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class BatchSendActivity extends BaseActivity {
private RelativeLayout imgLay;
public ActivityResultLauncher<Intent> launcher;
private ExecutorWindow mExecutorWindow;
public PopNotification mPopNotification;
private NumberOfPeopleAdapter numberOfPeopleAdapter;
private LinearLayout selectIvLayout;
private TextView selectObjectTv;
private String selectTagNameStr;
private EditText sendEt;
private TextView sendHisTv;
private ImageView showImg;
private final String funcId = "10028";
private final List<NumberOfPeopleData> numberOfPeopleData = new ArrayList();
private int numPos = 0;
private String imgStr = "";
private String urlStr = "";
private String tagUrlStr = "";
private boolean tsModel = false;
private int isCheckSelectObject = 100;
private List<TagAndGroupBean> selectNoObjectData = new ArrayList();
private final Handler handlerPost = new Handler(Looper.getMainLooper());
public static class BatchData {
public int end;
public String sendText;
public int start;
public String tag_name;
public boolean isHaveText = false;
public boolean isHaveImg = false;
}
@Override
protected int getLayoutId() {
return R.layout.activity_batch_send;
}
@Override
protected boolean isSetBaseTitle() {
return true;
}
@Override
protected void initTitle() {
setBaseTitle(this, getString(R.string.friend_batch_send_title));
}
@Override
protected void initPageView() {
initActivityResult();
this.tsModel = SharedPreferencesUtil.getBoolean(this, "TS_DEVICE_MODEL", false);
final TextView textView = (TextView) findViewById(R.id.change_tv);
final TextView textView2 = (TextView) findViewById(R.id.change_tip_tv);
this.sendEt = (EditText) findViewById(R.id.send_text_ed);
this.sendHisTv = (TextView) findViewById(R.id.send_his_tv);
this.selectObjectTv = (TextView) findViewById(R.id.select_object_text);
setImg();
textView.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
BatchSendActivity.this.lambda$initPageView$0(textView, textView2, view);
}
});
setData(9801, 200);
RecyclerView findViewById = findViewById(R.id.batch_rv);
findViewById.setLayoutManager(new GridLayoutManager(this, 4));
NumberOfPeopleAdapter numberOfPeopleAdapter = new NumberOfPeopleAdapter(R.layout.item_batch_layout, this.numberOfPeopleData);
this.numberOfPeopleAdapter = numberOfPeopleAdapter;
findViewById.setAdapter(numberOfPeopleAdapter);
this.numberOfPeopleAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
public final void onItemClick(BaseQuickAdapter baseQuickAdapter, View view, int i) {
BatchSendActivity.this.lambda$initPageView$1(baseQuickAdapter, view, i);
}
});
this.numberOfPeopleData.get(this.numPos).isSelect = true;
this.numberOfPeopleAdapter.setNewData(this.numberOfPeopleData);
findViewById(R.id.send_ok).setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
BatchSendActivity.this.lambda$initPageView$2(view);
}
});
findViewById(R.id.select_object_lay).setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
BatchSendActivity.this.lambda$initPageView$3(view);
}
});
findViewById(R.id.continuous_lay).setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
BatchSendActivity.this.lambda$initPageView$4(view);
}
});
}
public void lambda$initPageView$0(TextView textView, TextView textView2, View view) {
if (textView.getText().toString().equals("切换到200人")) {
textView.setText("切换到500人");
setData(9801, 200);
textView2.setText("部分号一次可以发500人");
} else {
textView.setText("切换到200人");
setData(9501, 500);
textView2.setText("支持部分、如发送不成功请切换到200人");
}
}
public void lambda$initPageView$1(BaseQuickAdapter baseQuickAdapter, View view, int i) {
this.numPos = i;
Iterator<NumberOfPeopleData> it = this.numberOfPeopleData.iterator();
while (it.hasNext()) {
it.next().isSelect = false;
}
this.numberOfPeopleData.get(i).isSelect = true;
this.numberOfPeopleAdapter.setNewData(this.numberOfPeopleData);
}
public void lambda$initPageView$2(View view) {
if (this.imgStr.isEmpty() && this.sendEt.getText().toString().isEmpty()) {
showCenterToast("请先输入需要发送的问题或添加图片!");
} else {
getFuncLimit("10028");
}
}
public void lambda$initPageView$3(View view) {
Intent intent = new Intent((Context) this, (Class<?>) SelectCheckObjectWithBatchActivity.class);
intent.putExtra(FriendSelectObjectTagActivity.IS_SELECT_OBJECT, this.isCheckSelectObject);
intent.putExtra("selectNoObjectData", (Serializable) this.selectNoObjectData);
intent.putExtra("selectTagNameStr", this.selectTagNameStr);
this.launcher.launch(intent);
}
public void lambda$initPageView$4(View view) {
startIntent(this, BatchSendWithContinuousActivity.class);
}
public void initActivityResult() {
this.launcher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
public final void onActivityResult(Object obj) {
BatchSendActivity.this.lambda$initActivityResult$5((ActivityResult) obj);
}
});
}
public void lambda$initActivityResult$5(ActivityResult activityResult) {
if (activityResult.getResultCode() != -1 || activityResult.getData() == null) {
return;
}
this.isCheckSelectObject = activityResult.getData().getIntExtra(FriendSelectObjectTagActivity.IS_SELECT_OBJECT, 100);
this.selectTagNameStr = activityResult.getData().getStringExtra("selectTagNameStr");
if (this.isCheckSelectObject == 100) {
this.selectObjectTv.setText("所有好友");
} else {
this.selectObjectTv.setText("标签-" + this.selectTagNameStr);
}
this.selectNoObjectData = (List) activityResult.getData().getSerializableExtra("selectNoObjectData");
}
private void setData(int i, int i2) {
int i3 = i - 1;
ArrayList arrayList = new ArrayList();
ArrayList arrayList2 = new ArrayList();
arrayList.add(0);
int i4 = 0;
while (i4 < i3) {
i4 += i2;
arrayList.add(Integer.valueOf(i4));
}
arrayList2.add(Integer.valueOf(i2));
int i5 = i2;
while (i5 < 10000) {
i5 += i2;
arrayList2.add(Integer.valueOf(i5));
}
this.numberOfPeopleData.clear();
for (int i6 = 0; i6 < arrayList.size(); i6++) {
this.numberOfPeopleData.add(new NumberOfPeopleData(((Integer) arrayList.get(i6)).intValue(), ((Integer) arrayList2.get(i6)).intValue()));
}
if (this.numberOfPeopleAdapter != null) {
this.numPos = 0;
this.numberOfPeopleData.get(0).isSelect = true;
this.numberOfPeopleAdapter.setNewData(this.numberOfPeopleData);
}
}
private void setImg() {
this.selectIvLayout = (LinearLayout) findViewById(R.id.select_img);
if (Constant.isShowImg) {
this.selectIvLayout.setVisibility(0);
}
this.imgLay = (RelativeLayout) findViewById(R.id.img_lay);
this.showImg = (ImageView) findViewById(R.id.show_iv);
ImageView imageView = (ImageView) findViewById(R.id.delete_iv);
this.selectIvLayout.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
BatchSendActivity.this.lambda$setImg$6(view);
}
});
imageView.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
BatchSendActivity.this.lambda$setImg$7(view);
}
});
}
public void lambda$setImg$6(View view) {
toSelectImg();
}
public void lambda$setImg$7(View view) {
this.imgStr = "";
this.imgLay.setVisibility(8);
this.selectIvLayout.setVisibility(0);
}
private void toSelectImg() {
if (!Utils.isImgPermission(this)) {
PopNotification build = PopNotification.build();
this.mPopNotification = build;
build.setTitle("相机和存储权限使用说明:").setMessage("用于拍摄、储存照片以及在相册中浏览查看照片").noAutoDismiss().show();
}
XXPermissions.with((Context) this).permission(Utils.imgPermission(this)).request(new OnPermissionCallback() {
@Override
public void onGranted(List<String> list, boolean z) {
BatchSendActivity.this.imgSelect();
if (BatchSendActivity.this.mPopNotification != null) {
BatchSendActivity.this.mPopNotification.dismiss();
}
}
@Override
public void onDenied(List<String> list, boolean z) {
if (BatchSendActivity.this.mPopNotification != null) {
BatchSendActivity.this.mPopNotification.dismiss();
}
}
});
}
public void imgSelect() {
PictureSelector.create(this).openGallery(SelectMimeType.ofImage()).setMaxSelectNum(1).setMinSelectNum(1).setImageEngine(GlideEngine.createGlideEngine()).setSelectorUIStyle(Utils.selectorStyle()).forResult(new OnResultCallbackListener<LocalMedia>() {
public void onCancel() {
}
public void onResult(ArrayList<LocalMedia> arrayList) {
BatchSendActivity.this.imgStr = arrayList.get(0).getPath();
Glide.with(BatchSendActivity.this).load(BatchSendActivity.this.imgStr).into(BatchSendActivity.this.showImg);
BatchSendActivity.this.selectIvLayout.setVisibility(8);
BatchSendActivity.this.imgLay.setVisibility(0);
}
});
}
@Override
public void lambda$setNotYearVipTip$7() {
super.lambda$setNotYearVipTip$7();
if (!this.imgStr.isEmpty()) {
ImageSaveUtil.saveAlbum((Context) this, BitmapFactory.decodeFile(this.imgStr), Bitmap.CompressFormat.JPEG, 100, false);
}
Utils.openWx(this);
this.handlerPost.post(new Runnable() {
@Override
public final void run() {
BatchSendActivity.this.start();
}
});
}
public void start() {
BatchData batchData = new BatchData();
try {
IAccessibility accessibility = AuxiliaryService.getAccessibility();
if (this.isCheckSelectObject == 100) {
this.mExecutorWindow = ScriptLoadUtil.loadWx(accessibility, "10028", "batch_send");
} else {
this.mExecutorWindow = ScriptLoadUtil.loadWx(accessibility, "10028", "batch_send_with_tag");
}
if (!this.sendEt.getText().toString().isEmpty()) {
batchData.sendText = this.sendEt.getText().toString();
batchData.isHaveText = true;
}
if (!this.imgStr.isEmpty()) {
batchData.isHaveImg = true;
}
batchData.tag_name = this.selectTagNameStr;
batchData.start = this.numberOfPeopleData.get(this.numPos).startNum;
batchData.end = this.numberOfPeopleData.get(this.numPos).endNum - 1;
this.mExecutorWindow.setArgs(batchData);
this.mExecutorWindow.showFloatWindow();
this.mExecutorWindow.setStatus("群发中", 0);
this.mExecutorWindow.setIFilter(new NodeExecutor.IFilter() {
public final List onFilter(NodeExecutor nodeExecutor, INode iNode, List list, Object obj) {
List lambda$start$8;
lambda$start$8 = BatchSendActivity.this.lambda$start$8(nodeExecutor, iNode, list, obj);
return lambda$start$8;
}
});
this.mExecutorWindow.setCallback(new NodeExecutor.DefaultCallback(this) {
public boolean onPageFound(IAccessibility iAccessibility, PageNode pageNode, NodeExecutor nodeExecutor) {
if (pageNode.getPageName() != null && pageNode.getPageName().equals("群发助手群发失败")) {
nodeExecutor.pause();
BatchSendActivity.this.mExecutorWindow.setMessageShow("群发失败!\n可能是操作太频繁,建议24小时后重试!(您也可以手动点击发送)");
}
return super.onPageFound(iAccessibility, pageNode, nodeExecutor);
}
});
this.mExecutorWindow.addStatusCallback(new NodeExecutor.StatusCallback() {
public void onFail(NodeExecutor nodeExecutor, Throwable th) {
}
public void onPause(NodeExecutor nodeExecutor) {
}
public void onResume(NodeExecutor nodeExecutor) {
}
public void onStart(NodeExecutor nodeExecutor) {
}
public void onFinish(NodeExecutor nodeExecutor, boolean z) {
BatchSendActivity.this.addFuncLimitCount("10028");
BatchSendActivity.this.mExecutorWindow.setMessageShow("群发完成!");
SharedPreferencesUtil.putString(BatchSendActivity.this, "batchSendHis", ((NumberOfPeopleData) BatchSendActivity.this.numberOfPeopleData.get(BatchSendActivity.this.numPos)).startNum + "-" + ((NumberOfPeopleData) BatchSendActivity.this.numberOfPeopleData.get(BatchSendActivity.this.numPos)).endNum);
}
});
} catch (Exception e) {
e.printStackTrace();
}
}
public List lambda$start$8(NodeExecutor nodeExecutor, INode iNode, List list, Object obj) {
ArrayList arrayList = new ArrayList(list);
List<TagAndGroupBean> list2 = this.selectNoObjectData;
if (list2 != null && !list2.isEmpty()) {
for (FriendData friendData : getNotSendFriendData()) {
Iterator it = list.iterator();
while (true) {
if (!it.hasNext()) {
break;
}
AccessibilityNodeInfo accessibilityNodeInfo = (AccessibilityNodeInfo) it.next();
if (accessibilityNodeInfo != null && accessibilityNodeInfo.getText() != null && friendData.nameStr.equals(accessibilityNodeInfo.getText().toString())) {
arrayList.remove(accessibilityNodeInfo);
break;
}
}
}
}
return arrayList;
}
private static class NumberOfPeopleAdapter extends BaseQuickAdapter<NumberOfPeopleData, BaseViewHolder> {
public NumberOfPeopleAdapter(int i, List<NumberOfPeopleData> list) {
super(i, list);
}
public void convert(BaseViewHolder baseViewHolder, NumberOfPeopleData numberOfPeopleData) {
TextView textView = (TextView) baseViewHolder.getView(R.id.item_batch_tv);
textView.setText((numberOfPeopleData.startNum + 1) + "-" + numberOfPeopleData.endNum);
textView.setSelected(numberOfPeopleData.isSelect);
}
}
public List<FriendData> getNotSendFriendData() {
ArrayList arrayList = new ArrayList();
List<TagAndGroupBean> list = this.selectNoObjectData;
if (list != null && list.size() > 0) {
Iterator<TagAndGroupBean> it = this.selectNoObjectData.iterator();
while (it.hasNext()) {
Iterator<FriendData> it2 = it.next().getFriendData().iterator();
while (it2.hasNext()) {
arrayList.add(new FriendData(it2.next().getNameStr()));
}
}
}
return arrayList;
}
public static class NumberOfPeopleData {
public int endNum;
public boolean isSelect;
public int startNum;
public NumberOfPeopleData(int i, int i2) {
this.startNum = i;
this.endNum = i2;
}
}
protected void onResume() {
super.onResume();
ExecutorWindow executorWindow = this.mExecutorWindow;
if (executorWindow != null) {
executorWindow.hideFloatWindow();
this.mExecutorWindow.stop();
}
String string = SharedPreferencesUtil.getString(this, "batchSendHis", "");
if (this.sendHisTv != null) {
if (string.isEmpty()) {
this.sendHisTv.setVisibility(8);
} else {
this.sendHisTv.setVisibility(0);
this.sendHisTv.setText("[您上次群发到:" + string + "人]");
}
}
}
@Override
protected void onDestroy() {
super.onDestroy();
ExecutorWindow executorWindow = this.mExecutorWindow;
if (executorWindow != null) {
executorWindow.hideFloatWindow();
this.mExecutorWindow.stop();
}
}
private String getScript() {
if (this.tsModel) {
return "http://cdn.usfriend.cn/script/tagSend/ts/batch_send.json";
}
return "http://cdn.usfriend.cn/script/tagSend/batch_send.json";
}
private String getTagRunScript() {
if (this.tsModel) {
return "http://cdn.usfriend.cn/script/tagSend/ts/batch_send_with_tag.json";
}
return "http://cdn.usfriend.cn/script/tagSend/batch_send_with_tag.json";
}
}