导航菜单

页面标题

页面副标题

Petal Maps v4.7.0.310001 - FeedUploadActivity.java 源代码

正在查看: Petal Maps v4.7.0.310001 应用的 FeedUploadActivity.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package com.huawei.phoneservice.feedback.ui;

import android.app.AlertDialog;
import android.content.res.Configuration;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.text.Editable;
import android.text.InputFilter;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.TextView;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.huawei.phoneservice.faq.base.constants.FaqConstants;
import com.huawei.phoneservice.faq.base.util.AttackCharFilter;
import com.huawei.phoneservice.faq.base.util.FaqCommonUtils;
import com.huawei.phoneservice.faq.base.util.FaqLogger;
import com.huawei.phoneservice.faq.base.util.FaqSdk;
import com.huawei.phoneservice.faq.base.util.FaqToastUtils;
import com.huawei.phoneservice.faq.base.util.NoDoubleClickUtil;
import com.huawei.phoneservice.feedback.R$color;
import com.huawei.phoneservice.feedback.R$id;
import com.huawei.phoneservice.feedback.R$layout;
import com.huawei.phoneservice.feedback.R$string;
import com.huawei.phoneservice.feedback.entity.FeedbackBean;
import com.huawei.phoneservice.feedback.mvp.base.FeedbackBaseActivity;
import com.huawei.phoneservice.feedbackcommon.entity.FeedbackInfo;
import com.huawei.phoneservice.feedbackcommon.network.FeedbackWebConstants;
import com.huawei.phoneservice.feedbackcommon.utils.AsCache;
import com.huawei.phoneservice.feedbackcommon.utils.NetworkUtils;
import com.huawei.phoneservice.feedbackcommon.utils.UriDeserializer;
import com.huawei.phoneservice.feedbackcommon.utils.UriSerializer;
import com.huawei.phoneservice.feedbackcommon.utils.ZipUtil;
import com.huawei.secure.android.common.intent.SafeBundle;
import java.io.File;
import java.io.IOException;

public class FeedUploadActivity extends FeedbackBaseActivity<com.huawei.phoneservice.feedback.mvp.presenter.d> implements View.OnClickListener, View.OnFocusChangeListener, com.huawei.phoneservice.feedback.mvp.contract.f {
    public Button A;
    public Button B;
    public com.huawei.phoneservice.feedback.mvp.presenter.d C;
    public EditText D;
    public FeedbackBean E;
    public AsCache F;
    public boolean G = false;
    public TextView H;
    public TextView I;
    public boolean J;
    public LinearLayout K;
    public TextView z;

    public class a implements View.OnClickListener {
        public a() {
        }

        @Override
        public void onClick(View view) {
            if (NoDoubleClickUtil.isDoubleClick(view)) {
                return;
            }
            FeedUploadActivity.this.w();
            FeedUploadActivity.this.C.f();
            FaqSdk.getISdk().onClick(FeedUploadActivity.this.getClass().getName(), "Cancel", FeedUploadActivity.this.E);
        }
    }

    public class b implements View.OnClickListener {
        public b() {
        }

        @Override
        public void onClick(View view) {
            FeedUploadActivity.this.finish();
        }
    }

    public class c implements Runnable {
        public final com.huawei.phoneservice.feedback.utils.a a;

        public c(com.huawei.phoneservice.feedback.utils.a aVar) {
            this.a = aVar;
        }

        @Override
        public void run() {
            FeedUploadActivity.this.K.setVisibility(8);
            com.huawei.phoneservice.feedback.utils.a aVar = this.a;
            if (aVar == com.huawei.phoneservice.feedback.utils.a.ZIP_COMPRESS_FAILED) {
                FeedUploadActivity.this.I.setVisibility(0);
            } else if (aVar == com.huawei.phoneservice.feedback.utils.a.ZIP_COMPRESS_SUCCESS && FeedUploadActivity.this.J) {
                FeedUploadActivity.this.J();
                return;
            }
            FeedUploadActivity.this.C();
        }
    }

    public class d implements Runnable {
        public d() {
        }

        @Override
        public void run() {
            FeedUploadActivity.this.C.h();
        }
    }

    public class e implements View.OnTouchListener {
        public e() {
        }

        @Override
        public boolean onTouch(View view, MotionEvent motionEvent) {
            FeedUploadActivity.this.D.setFocusableInTouchMode(true);
            if (view.getId() == R$id.edit_desc && com.huawei.phoneservice.feedback.photolibrary.internal.utils.b.b(FeedUploadActivity.this.D)) {
                view.getParent().requestDisallowInterceptTouchEvent(true);
                if (motionEvent.getAction() == 1) {
                    view.getParent().requestDisallowInterceptTouchEvent(false);
                }
            }
            return false;
        }
    }

    public class g implements Runnable {
        public g() {
        }

        @Override
        public void run() {
            FeedUploadActivity.this.C.h();
        }
    }

    public class h implements View.OnClickListener {
        public h() {
        }

        @Override
        public void onClick(View view) {
            if (NoDoubleClickUtil.isDoubleClick(view)) {
                return;
            }
            FeedUploadActivity.this.w();
            FeedUploadActivity.this.B();
        }
    }

    public class i implements View.OnClickListener {
        public i() {
        }

        @Override
        public void onClick(View view) {
            FeedUploadActivity.this.w();
        }
    }

    public class j implements View.OnClickListener {
        public j() {
        }

        @Override
        public void onClick(View view) {
            if (NoDoubleClickUtil.isDoubleClick(view)) {
                return;
            }
            FeedUploadActivity.this.w();
            FeedUploadActivity.this.E();
        }
    }

    public class k implements View.OnClickListener {
        public k() {
        }

        @Override
        public void onClick(View view) {
            if (NoDoubleClickUtil.isDoubleClick(view)) {
                return;
            }
            FeedUploadActivity.this.w();
            if (FeedUploadActivity.this.F != null) {
                FeedUploadActivity.this.F.remove("lastSubmitzip");
            }
            FeedUploadActivity.this.E = new FeedbackBean();
            FeedUploadActivity.this.D.setText(FeedUploadActivity.this.E.getProblemDesc());
            FeedUploadActivity.this.D.setSelection(FeedUploadActivity.this.E.getProblemDesc().length());
            FeedUploadActivity.this.J = false;
            FeedUploadActivity.this.E();
        }
    }

    public class l implements View.OnClickListener {
        public l() {
        }

        @Override
        public void onClick(View view) {
            if (NoDoubleClickUtil.isDoubleClick(view)) {
                return;
            }
            FeedUploadActivity.this.w();
            FeedUploadActivity.this.C.g();
            FaqSdk.getISdk().onClick(FeedUploadActivity.this.getClass().getName(), "Quit", FeedUploadActivity.this.E);
        }
    }

    private void A() {
        View inflate = getLayoutInflater().inflate(R$layout.feedback_sdk_dialog_uploadzip, (ViewGroup) null);
        ((TextView) inflate.findViewById(R$id.close)).setOnClickListener(new b());
        a(inflate, false);
    }

    public void B() {
        Gson create = this.E.haveMedias() ? new GsonBuilder().registerTypeAdapter(Uri.class, new UriSerializer()).create() : new Gson();
        AsCache asCache = this.F;
        if (asCache != null) {
            asCache.put("lastSubmitzip", create.toJson(this.E), 172800);
        }
        this.C.b(0, 0);
        this.C.c(this, true);
    }

    public void C() {
        this.A.setEnabled(this.G);
    }

    public void E() {
        ZipUtil.deleteFile(new File(FeedbackWebConstants.getZipFilePath(this)));
        P(R$string.feedback_sdk_zipcompressing);
        new Handler().postDelayed(new d(), 500L);
        this.K.setVisibility(0);
        C();
    }

    private void H() {
        if (this.A.getMeasuredWidth() < FaqCommonUtils.getScreenWidthHeight(this)) {
            com.huawei.phoneservice.feedback.photolibrary.internal.utils.b.a(this, this.A);
        }
    }

    @Override
    public com.huawei.phoneservice.feedback.mvp.presenter.d y() {
        com.huawei.phoneservice.feedback.mvp.presenter.d dVar = new com.huawei.phoneservice.feedback.mvp.presenter.d(this, this);
        this.C = dVar;
        return dVar;
    }

    public void F() {
        a(getString(R$string.feedback_sdk_tips_continue_to_submit), getString(R$string.feedback_sdk_appupdate3_continue), getString(R$string.feedback_sdk_common_cancel), new j(), new k());
    }

    public void G() {
        a(getString(R$string.feedback_sdk_tips_upload_waiting_or_exit_new), null, null, new l(), new a());
        this.C.e();
    }

    public final boolean I() {
        AsCache asCache = this.F;
        if (asCache == null) {
            return false;
        }
        String asString = asCache.getAsString("lastSubmitzip");
        if (TextUtils.isEmpty(asString)) {
            return false;
        }
        this.E = (FeedbackBean) new GsonBuilder().registerTypeAdapter(Uri.class, new UriDeserializer()).create().fromJson(asString, FeedbackBean.class);
        return true;
    }

    public final void J() {
        if (this.E == null) {
            return;
        }
        int i2 = 10;
        try {
            int parseInt = Integer.parseInt(FaqSdk.getSdk().getSdk(FaqConstants.FAQ_MIN_DESC_INPUT));
            if (parseInt >= 1 && parseInt <= 10) {
                i2 = parseInt;
            }
        } catch (NumberFormatException unused) {
        }
        if (TextUtils.isEmpty(this.E.getProblemDesc()) || this.E.getProblemDesc().trim().length() < i2) {
            c(getString(R$string.feedback_sdk_feedback_desc_hint, Integer.valueOf(i2)));
            return;
        }
        if (!NetworkUtils.isNetworkConnected(this)) {
            c(getResources().getString(R$string.feedback_sdk_no_network));
        } else if (0 == this.E.getLogsSize() || NetworkUtils.isWifiConnected(this)) {
            B();
        } else {
            e(com.huawei.quickcard.utils.NetworkUtils.NETWORK_TYPE_WIFI);
        }
    }

    public final void P(int i2) {
        this.H.setText(i2);
        this.K.setVisibility(0);
        this.A.setEnabled(false);
    }

    @Override
    public void a() {
        AsCache asCache = this.F;
        if (asCache != null) {
            asCache.remove("lastSubmitzip");
        }
        this.K.setVisibility(8);
        this.B.setVisibility(8);
        this.A.setEnabled(true);
    }

    @Override
    public FeedbackInfo b() {
        return this.E.getInfo();
    }

    @Override
    public FeedbackBean c() {
        return this.E;
    }

    @Override
    public void e() {
        P(R$string.feedback_sdk_common_in_submission);
        this.B.setVisibility(0);
    }

    @Override
    public int j() {
        return R$layout.feedback_sdk_activity_uploadfile;
    }

    @Override
    public int[] k() {
        return new int[]{R$id.rl_uploadfile};
    }

    @Override
    public void l() {
        try {
            this.F = AsCache.get(this, AsCache.FEED_BACK_CACHE_FILE_NAME);
        } catch (IOException | RuntimeException e2) {
            FaqLogger.e("FeedUploadActivity", e2.getMessage());
        }
        boolean I = I();
        this.J = I;
        if (I) {
            F();
        } else {
            this.E = new FeedbackBean();
            E();
        }
        this.E.setShowLog(true);
        this.D.setText(this.E.getProblemDesc());
        this.D.setSelection(this.E.getProblemDesc().length());
        H();
    }

    @Override
    public void m() {
        this.A.setOnClickListener(this);
        this.D.setOnFocusChangeListener(this);
        this.I.setOnClickListener(this);
        this.D.setOnTouchListener(new e());
        this.D.addTextChangedListener(new f());
    }

    @Override
    public void n() {
        setTitle(R$string.feedback_sdk_uploadfile_title);
        TextView textView = (TextView) findViewById(R$id.txt_number);
        this.z = textView;
        textView.setText(String.format(getResources().getString(R$string.feedback_sdk_problem_input_number), 0, 500));
        this.A = (Button) findViewById(R$id.btn_submit);
        this.D = (EditText) findViewById(R$id.edit_desc);
        this.K = (LinearLayout) findViewById(R$id.layout_loading);
        this.B = (Button) findViewById(R$id.bg_dismiss);
        this.H = (TextView) findViewById(R$id.tv_progress);
        this.I = (TextView) findViewById(R$id.tv_tryagain);
        this.D.setFilters(new InputFilter[]{new InputFilter.LengthFilter(500), new AttackCharFilter()});
    }

    public void onBackPressed() {
        AlertDialog alertDialog = this.d;
        if (alertDialog != null && alertDialog.isShowing()) {
            this.d.dismiss();
        } else if (!this.C.d()) {
            G();
        } else {
            if (this.B.getVisibility() == 0) {
                return;
            }
            super/*androidx.activity.ComponentActivity*/.onBackPressed();
        }
    }

    @Override
    public void onClick(View view) {
        if (NoDoubleClickUtil.isDoubleClick(view)) {
            return;
        }
        if (view.getId() == R$id.btn_submit) {
            FaqCommonUtils.hideIme(this);
            J();
        } else if (view.getId() == R$id.tv_tryagain) {
            this.I.setVisibility(8);
            ZipUtil.deleteFile(new File(FeedbackWebConstants.getZipFilePath(this)));
            new Handler().postDelayed(new g(), 500L);
            P(R$string.feedback_sdk_zipcompress_again);
            this.K.setVisibility(0);
            this.J = false;
        }
    }

    @Override
    public void onConfigurationChanged(Configuration configuration) {
        super.onConfigurationChanged(configuration);
        Button button = this.A;
        if (button != null) {
            com.huawei.phoneservice.feedback.photolibrary.internal.utils.b.a(this, button);
        }
    }

    @Override
    public void onCreate(@Nullable Bundle bundle) {
        if (bundle != null) {
            SafeBundle safeBundle = new SafeBundle(bundle);
            this.E = (FeedbackBean) safeBundle.getParcelable("FeedbackBean");
            FaqSdk.getSdk().saveMapOnSaveInstanceState(safeBundle.getString("CacheMap"));
        }
        super.onCreate(bundle);
    }

    @Override
    public void onFocusChange(View view, boolean z) {
        String obj;
        EditText editText = (EditText) view;
        if (view.getId() == R$id.edit_desc) {
            if (z) {
                editText.setTag(editText.getHint().toString());
                obj = "";
            } else {
                obj = editText.getTag().toString();
            }
            editText.setHint(obj);
        }
    }

    public void onSaveInstanceState(Bundle bundle) {
        super/*androidx.activity.ComponentActivity*/.onSaveInstanceState(bundle);
        bundle.putParcelable("FeedbackBean", this.E);
        bundle.putString("CacheMap", FaqSdk.getSdk().getMapOnSaveInstance());
    }

    @Override
    public void a(com.huawei.phoneservice.feedback.utils.a aVar) {
        int i2;
        if (aVar != com.huawei.phoneservice.feedback.utils.a.ZIP_COMPRESS_SUCCESS) {
            if (aVar == com.huawei.phoneservice.feedback.utils.a.ZIP_COMPRESS_FAILED) {
                i2 = R$string.feedback_sdk_zipcompressfailed;
            }
            new Handler().postDelayed(new c(aVar), 500L);
        }
        this.G = true;
        i2 = R$string.feedback_sdk_zipcompresssuccess;
        P(i2);
        new Handler().postDelayed(new c(aVar), 500L);
    }

    @Override
    public void c(String str) {
        FaqToastUtils.makeText(this, str);
    }

    public void e(String str) {
        long logsSize = this.E.getLogsSize();
        if (logsSize == 0) {
            logsSize = 1;
        }
        a(logsSize, new h(), new i());
    }

    @Override
    public void a(String str) {
        AlertDialog alertDialog = this.d;
        if (alertDialog != null && alertDialog.isShowing()) {
            this.d.dismiss();
        }
        A();
    }

    public class f implements TextWatcher {
        public f() {
        }

        @Override
        public void afterTextChanged(Editable editable) {
            if (FeedUploadActivity.this.E != null) {
                String trim = FeedUploadActivity.this.D.getText().toString().trim();
                FeedUploadActivity.this.E.setProblemDesc(trim);
                int length = trim.length();
                FeedUploadActivity.this.z.setTextColor(ContextCompat.getColor(FeedUploadActivity.this, length >= 500 ? R$color.feedback_sdk_problem_question_max_number : R$color.feedback_sdk_problem_question_number));
                FeedUploadActivity.this.z.setText(String.format(FeedUploadActivity.this.getResources().getString(R$string.feedback_sdk_problem_input_number), Integer.valueOf(length), 500));
            }
        }

        @Override
        public void beforeTextChanged(CharSequence charSequence, int i, int i2, int i3) {
        }

        @Override
        public void onTextChanged(CharSequence charSequence, int i, int i2, int i3) {
        }
    }
}