Kate Mobile v109.1版本的 MD5 值为:fcd76ded5f363ecbfac46035a4ed2a23
以下内容为反编译后的 ProxyActivity.java 源代码,内容仅作参考
package com.perm.kate;
import android.content.Intent;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.EditText;
import android.widget.TextView;
import com.perm.utils.ProxyManager;
import com.perm.utils.UkrBlockChecker;
public class ProxyActivity extends BaseActivity {
Button btn_check;
final CompoundButton.OnCheckedChangeListener checkListener = new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean z) {
ProxyManager.setEnabled(z);
}
};
CheckBox checkbox;
TextView statusView;
public void checkProxy() {
new Thread() {
@Override
public void run() {
final boolean checkUrlWithProxyOkHttp = UkrBlockChecker.checkUrlWithProxyOkHttp("https://yandex.ru");
ProxyActivity.this.runOnUiThread(new Runnable() {
@Override
public void run() {
ProxyActivity.this.btn_check.setEnabled(true);
ProxyActivity.this.showProgressBar(false);
if (checkUrlWithProxyOkHttp) {
ProxyActivity.this.statusView.setText(R.string.proxy_ok);
} else {
ProxyActivity.this.statusView.setText(R.string.proxy_fail);
}
}
});
}
}.start();
this.statusView.setVisibility(0);
this.statusView.setText(R.string.please_wait);
this.btn_check.setEnabled(false);
showProgressBar(true);
}
@Override
protected boolean fillMenuItems(Menu menu) {
return true;
}
@Override
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
setContentView(R.layout.proxy);
setHeaderTitle(R.string.proxy);
setButtonsBg();
CheckBox checkBox = (CheckBox) findViewById(R.id.check_proxy);
this.checkbox = checkBox;
checkBox.setChecked(ProxyManager.getEnabled());
this.checkbox.setOnCheckedChangeListener(this.checkListener);
Button button = (Button) findViewById(R.id.btn_done);
button.setText("OK");
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
ProxyActivity.this.finish();
}
});
findViewById(R.id.btn_cancel).setVisibility(8);
findViewById(R.id.vertical_divider).setVisibility(8);
this.statusView = (TextView) findViewById(R.id.status);
Button button2 = (Button) findViewById(R.id.btn_check);
this.btn_check = button2;
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
ProxyActivity.this.checkProxy();
}
});
EditText editText = (EditText) findViewById(R.id.ed_server);
EditText editText2 = (EditText) findViewById(R.id.ed_port);
String server = ProxyManager.getServer();
if (server.length() > 0) {
editText.setText(server);
}
int port = ProxyManager.getPort();
if (port > 0) {
editText2.setText(String.valueOf(port));
}
editText.addTextChangedListener(new TextWatcher() {
@Override
public void afterTextChanged(Editable editable) {
}
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i2, int i3) {
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i2, int i3) {
ProxyManager.setServer(charSequence.toString());
ProxyActivity.this.statusView.setText("");
}
});
editText2.addTextChangedListener(new TextWatcher() {
@Override
public void afterTextChanged(Editable editable) {
}
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i2, int i3) {
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i2, int i3) {
int i4;
try {
i4 = Integer.parseInt(charSequence.toString());
} catch (NumberFormatException unused) {
i4 = 0;
}
ProxyManager.setPort(i4);
ProxyActivity.this.statusView.setText("");
}
});
}
@Override
public boolean onOptionsItemSelected(MenuItem menuItem) {
if (menuItem.getItemId() == 200) {
startActivity(new Intent(this, SendLogActivity.class));
}
return super.onOptionsItemSelected(menuItem);
}
}