正在查看: 微商客 v2.1.2 应用的 XhsToHostCommentActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: 微商客 v2.1.2 应用的 XhsToHostCommentActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.jianzhen.wsk.ui.hk;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.SharedPreferences;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import androidx.recyclerview.widget.RecyclerView;
import com.auxiliary.library.core.NodeExecutor;
import com.auxiliary.library.node.ViewNode;
import com.auxiliary.library.node.WhileNode;
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.util.ClassUtil;
import com.auxiliary.library.widget.ExecutorWindow;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.google.android.flexbox.FlexboxLayoutManager;
import com.jianzhen.wsk.BaseActivity;
import com.jianzhen.wsk.R;
import com.jianzhen.wsk.dialog.HitDialog;
import com.jianzhen.wsk.dialog.NumDialog;
import com.jianzhen.wsk.dialog.YearVipTipDialog;
import com.jianzhen.wsk.net.api.Constant;
import com.jianzhen.wsk.ui.FunctionPermissionManageActivity;
import com.jianzhen.wsk.utils.ScriptLoadUtil;
import com.jianzhen.wsk.utils.SharedPreferencesUtil;
import com.jianzhen.wsk.utils.Utils;
import com.umeng.analytics.MobclickAgent;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
import java.util.List;
public class XhsToHostCommentActivity extends BaseActivity implements View.OnClickListener, BaseQuickAdapter.OnItemClickListener {
public static final String HISTORY = "wsk_history";
public static final String TAG = "wsk_dy_comment";
public static boolean isNotYearVip;
public static int progressNum;
private ExecutorWindow mExecutorWindow;
private EditText mMessageEdit;
private EditText mNumEdit;
private SharedPreferences mPreferences;
private EditText mSearchEdit;
private final String funcId = "10031";
private Adapter mAdapter = new Adapter();
private final Param mParam = new Param();
private boolean isRun = false;
public static class Param {
public String word = "";
public List<String> filterKey = new ArrayList();
public int num = 0;
public String message = "";
public boolean isHostComment = false;
}
@Override
protected int getLayoutId() {
return R.layout.activity_dy_host_to_comment;
}
@Override
protected boolean isSetBaseTitle() {
return true;
}
@Override
protected void initTitle() {
setBaseTitle(this, getString(R.string.xhs_more_comment_title));
}
@Override
protected void initPageView() {
isNotYearVip = getIntent().getBooleanExtra("isNotYearVip", false);
TextView textView = (TextView) findViewById(R.id.not_year_vip_tip);
textView.setVisibility(isNotYearVip ? 0 : 8);
textView.setText("非年会员用户最多可获客" + Constant.hkNum + "人");
this.mSearchEdit = (EditText) findViewById(R.id.ed_search_key);
this.mMessageEdit = (EditText) findViewById(R.id.ed_message);
this.mNumEdit = (EditText) findViewById(R.id.et_num);
((TextView) findViewById(R.id.tip_tv)).setText("在视频或图文下方发布吸引注意力的评论,通过评论曝光来促进用户吸引与转化");
RecyclerView findViewById = findViewById(R.id.rv_history);
FlexboxLayoutManager flexboxLayoutManager = new FlexboxLayoutManager(this);
flexboxLayoutManager.setFlexDirection(0);
flexboxLayoutManager.setFlexWrap(1);
findViewById.setLayoutManager(flexboxLayoutManager);
findViewById.setAdapter(this.mAdapter);
SharedPreferences sharedPreferences = getSharedPreferences("wsk_history", 0);
this.mPreferences = sharedPreferences;
this.mAdapter.addData((Collection) new ArrayList(sharedPreferences.getStringSet("wsk_dy_comment", new HashSet())));
this.mAdapter.setOnItemClickListener(this);
findViewById(R.id.tv_start).setOnClickListener(this);
String string = SharedPreferencesUtil.getString(this, "xhsVersionCode", "");
String str = Utils.getAppVersion(this, "com.xingin.xhs") + "";
if (!string.isEmpty() && Integer.parseInt(string) > 8710156) {
new AlertDialog.Builder(this).setTitle("温馨提示").setMessage("小红书目前支持8.71.0及以下版本使用,您当前版本暂不支持,请联系客服咨询正确版本使用!").setPositiveButton("知道了", (DialogInterface.OnClickListener) null).create().show();
}
SharedPreferencesUtil.putString(this, "xhsVersionCode", str);
if (!SharedPreferencesUtil.getBoolean(this, "xhsToolsAgreement", false)) {
Utils.showToolsAgreementTip(this, "小红书", "xhsToolsAgreement");
}
findViewById(R.id.num_tip).setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
XhsToHostCommentActivity.this.lambda$initPageView$0(view);
}
});
findViewById(R.id.industry_tip).setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
XhsToHostCommentActivity.this.lambda$initPageView$1(view);
}
});
}
public void lambda$initPageView$0(View view) {
Utils.showTip(this, 3);
}
public void lambda$initPageView$1(View view) {
Utils.showTip(this, 2);
}
public void onItemClick(BaseQuickAdapter baseQuickAdapter, View view, int i) {
this.mSearchEdit.setText(baseQuickAdapter.getItem(i).toString());
}
@Override
public void onClick(View view) {
if (view.getId() == 2131363313) {
if (isNotYearVip && this.isRun) {
new YearVipTipDialog(this).show();
return;
}
this.mParam.word = this.mSearchEdit.getText().toString();
this.mParam.message = this.mMessageEdit.getText().toString();
if (this.mParam.word.isEmpty()) {
Toast.makeText((Context) this, (CharSequence) "请输入搜索行业", 0).show();
return;
}
if (this.mParam.message.isEmpty()) {
Toast.makeText((Context) this, (CharSequence) "请输入评论内容", 0).show();
return;
}
if (this.mNumEdit.getText().toString().isEmpty()) {
Toast.makeText((Context) this, (CharSequence) "请输入评论条数", 0).show();
return;
}
this.mParam.num = Integer.parseInt(this.mNumEdit.getText().toString());
if (this.mAdapter.getData().size() > 10) {
this.mAdapter.remove(r5.getData().size() - 1);
}
this.mAdapter.addData(this.mParam.word);
this.mPreferences.edit().putStringSet("wsk_dy_comment", new HashSet(this.mAdapter.getData())).apply();
new HitDialog(this, this, "请确保手机安装有小红书,并已经完成登录!如未登录请先登录账号以后在进行操作。", "为确保程序稳定运行,建议将小红书升级为最新版本后使用。").show();
return;
}
if (view.getId() == 2131361965) {
if (backFromApplyPermission()) {
MobclickAgent.onEvent(this, "start_script_10031");
Utils.openXHS(this);
try {
ExecutorWindow loadXhs = ScriptLoadUtil.loadXhs(AuxiliaryService.getAccessibility(), "10031", "xiaohongshu_to_host_comment");
this.mExecutorWindow = loadXhs;
loadXhs.setArgs(this.mParam);
this.mExecutorWindow.setCallback(new DyCallback(getApplication(), this.mExecutorWindow));
this.mExecutorWindow.showFloatWindow();
this.mExecutorWindow.setIProgress(new DyCallback(getApplication(), this.mExecutorWindow));
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) {
XhsToHostCommentActivity.progressNum = 0;
}
public void onFinish(NodeExecutor nodeExecutor, boolean z) {
if (XhsToHostCommentActivity.isNotYearVip) {
XhsToHostCommentActivity.this.mExecutorWindow.setFinishMessage("小红书评论获客任务完成,本次获客数量为" + (XhsToHostCommentActivity.progressNum / 2) + "人,你的免费体验已结束,继续使用请返回应用,开通会员!", true);
} else {
XhsToHostCommentActivity.this.mExecutorWindow.setFinishMessage("小红书评论获客任务完成,本次获客数量为" + (XhsToHostCommentActivity.progressNum / 2) + "人", true);
}
XhsToHostCommentActivity.this.addFuncLimitCount("10031");
XhsToHostCommentActivity.this.isRun = true;
}
});
return;
} catch (Exception unused) {
Toast.makeText((Context) this, (CharSequence) "请先启动辅助服务", 0).show();
return;
}
}
startIntent(this, FunctionPermissionManageActivity.class);
}
}
private static class DyCallback extends NodeExecutor.DefaultCallback implements NodeExecutor.IProgress {
private ExecutorWindow mExecutorWindow;
public DyCallback(Context context, ExecutorWindow executorWindow) {
super(context);
this.mExecutorWindow = executorWindow;
}
public boolean onNodeNotFound(PageNode pageNode, ViewNode viewNode, NodeExecutor nodeExecutor) {
if (pageNode.getPageName() != null && pageNode.getPageName().equals("小红书搜索结果页")) {
this.mExecutorWindow.setMessage("异常中断,请返回搜索列表页面继续开始!", true);
}
return super.onNodeNotFound(pageNode, viewNode, nodeExecutor);
}
public boolean onPageFound(IAccessibility iAccessibility, PageNode pageNode, NodeExecutor nodeExecutor) {
if ("用户手动选择或自动选择一个视频".equals(pageNode.getPageName())) {
nodeExecutor.pause();
this.mExecutorWindow.setMessage("您可以自主选取任意视频后点击悬浮窗“继续”,也可以直接点击“继续”,系统将自动按预设搜索条件顺序选取视频,随后进入小红书客户获取流程。", true);
return super.onPageFound(iAccessibility, pageNode, nodeExecutor);
}
if ("小红书-输入主评论发送".equals(pageNode.getPageName())) {
XhsToHostCommentActivity.progressNum++;
this.mExecutorWindow.setProgress("当前已获客" + (XhsToHostCommentActivity.progressNum / 2) + "/" + ((Integer) ClassUtil.getFieldValue(nodeExecutor.getArgs(), NumDialog.NUM)));
}
return super.onPageFound(iAccessibility, pageNode, nodeExecutor);
}
public boolean onProgress(IAccessibility iAccessibility, INode iNode, Object[] objArr, int i, NodeExecutor nodeExecutor) {
if ("while_node".equals(iNode.getNodeType()) && "video".equals(((WhileNode) iNode).getTag())) {
Integer num = (Integer) ClassUtil.getFieldValue(nodeExecutor.getArgs(), NumDialog.NUM);
if (XhsToHostCommentActivity.progressNum / 2 >= (num == null ? 1 : num.intValue())) {
this.mExecutorWindow.setFinishMessage("小红书评论获客任务完成,本次获客数量为" + num + "人", true);
}
if (XhsToHostCommentActivity.isNotYearVip && XhsToHostCommentActivity.progressNum / 2 >= Constant.hkNum) {
this.mExecutorWindow.setFinishMessage("小红书评论获客任务完成,本次获客数量为" + num + "人", true);
}
} else {
this.mExecutorWindow.setProgress("当前进度...");
}
return true;
}
}
private static class Adapter extends BaseQuickAdapter<String, BaseViewHolder> {
public Adapter() {
super(R.layout.item_dy_comment_history);
}
public void convert(BaseViewHolder baseViewHolder, String str) {
((TextView) baseViewHolder.itemView).setText(str);
}
public void addData(String str) {
if (getData().contains(str)) {
return;
}
super.addData(str);
}
}
protected void onResume() {
super.onResume();
ExecutorWindow executorWindow = this.mExecutorWindow;
if (executorWindow != null) {
executorWindow.hideFloatWindow();
this.mExecutorWindow.stop();
}
}
@Override
protected void onDestroy() {
super.onDestroy();
ExecutorWindow executorWindow = this.mExecutorWindow;
if (executorWindow != null) {
executorWindow.hideFloatWindow();
this.mExecutorWindow.stop();
}
}
}