正在查看: EFFICIENT POS v1.5.7 应用的 WebActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: EFFICIENT POS v1.5.7 应用的 WebActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package dev.gtr.pos.activity;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.print.PrintAttributes;
import android.print.PrintManager;
import android.util.Log;
import android.view.KeyEvent;
import android.view.View;
import android.view.ViewGroup;
import android.webkit.CookieManager;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.ProgressBar;
import android.widget.TextView;
import android.widget.Toast;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import androidx.constraintlayout.widget.ConstraintLayout;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import dev.gtr.pos.R;
import dev.gtr.pos.api.ApiClient;
import dev.gtr.pos.config.Constant;
import dev.gtr.pos.model.NotificationApps;
import java.util.List;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
public class WebActivity extends AppCompatActivity {
AlertDialog.Builder alertBuilder;
AlertDialog alertDialog;
ConstraintLayout constraintLayoutExit;
List<String> cookie;
FloatingActionButton floatingActionButtonPrint;
ProgressBar progressBarWeb;
SharedPreferences sharedPreferences;
String url;
WebView webView;
WebView webViewPrint;
protected void onCreate(Bundle bundle) {
super.onCreate(bundle);
setContentView(R.layout.activity_web);
this.constraintLayoutExit = findViewById(R.id.constraintLayout_exit);
this.floatingActionButtonPrint = (FloatingActionButton) findViewById(R.id.floating_btn_print);
this.progressBarWeb = (ProgressBar) findViewById(R.id.progress_web);
this.webViewPrint = (WebView) findViewById(R.id.webView_print);
SharedPreferences sharedPreferences = getSharedPreferences("LOGIN", 0);
this.sharedPreferences = sharedPreferences;
Constant.EMAIL = sharedPreferences.getString("EMAIl", null);
Constant.PASS = this.sharedPreferences.getString("PASS", null);
this.url = ApiClient.getBaseUrl() + "Home/LoginApi?Email=" + Constant.EMAIL + "&Password=" + Constant.PASS + "&isMobile=1&DefaultComId=" + Constant.ComId;
getNotification();
WebView webView = (WebView) findViewById(R.id.webView);
this.webView = webView;
webView.getSettings().setJavaScriptEnabled(true);
this.webView.getSettings().setLoadWithOverviewMode(true);
this.webView.getSettings().setUseWideViewPort(true);
this.webView.getSettings().setDatabaseEnabled(true);
this.webView.getSettings().getAllowContentAccess();
this.webView.getSettings().getAllowFileAccessFromFileURLs();
this.webView.getSettings().getAllowFileAccess();
CookieManager.getInstance().setAcceptCookie(true);
this.webView.getSettings().setAllowContentAccess(true);
this.webView.getSettings().setDomStorageEnabled(true);
this.webView.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView webView2, String str) {
WebActivity.this.progressBarWeb.setVisibility(8);
WebActivity.this.constraintLayoutExit.setVisibility(0);
if (str.contains("ReportType")) {
WebActivity.this.floatingActionButtonPrint.setVisibility(0);
} else {
WebActivity.this.floatingActionButtonPrint.setVisibility(8);
}
Log.e("urls", "" + str);
if (str.contains("SaleId") && str.contains("SaleReport")) {
if (str.substring((ApiClient.getBaseUrl() + "Sales/SaleReport?SaleId=").length()).isEmpty()) {
return;
}
Intent intent = new Intent((Context) WebActivity.this, (Class<?>) SalesReportViewActivity.class);
intent.putExtra(Constant.COOKIE, WebActivity.this.cookie.get(0));
intent.putExtra(Constant.SalesId, str.substring((ApiClient.getBaseUrl() + "Sales/SaleReport?SaleId=").length()));
WebActivity.this.startActivity(intent);
}
}
@Override
public boolean shouldOverrideUrlLoading(WebView webView2, String str) {
if (!str.contains("ViewReport")) {
return false;
}
WebActivity.this.webViewPrint.setVisibility(0);
WebActivity.this.floatingActionButtonPrint.setVisibility(0);
WebActivity.this.webViewPrint.getSettings().setJavaScriptEnabled(true);
WebActivity.this.webViewPrint.getSettings().setLoadWithOverviewMode(true);
WebActivity.this.webViewPrint.getSettings().setUseWideViewPort(true);
WebActivity.this.webViewPrint.getSettings().setDatabaseEnabled(true);
WebActivity.this.webViewPrint.getSettings().getAllowContentAccess();
WebActivity.this.webViewPrint.getSettings().getAllowFileAccessFromFileURLs();
WebActivity.this.webViewPrint.getSettings().getAllowFileAccess();
CookieManager.getInstance().setAcceptCookie(true);
WebActivity.this.webViewPrint.getSettings().setAllowContentAccess(true);
WebActivity.this.webViewPrint.getSettings().setDomStorageEnabled(true);
WebActivity.this.webViewPrint.loadUrl(str + "&IsMobile=1");
return true;
}
});
this.webView.loadUrl(this.url);
this.constraintLayoutExit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
WebActivity.this.finish();
}
});
this.floatingActionButtonPrint.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
PrintManager printManager = (PrintManager) WebActivity.this.getSystemService("print");
String str = WebActivity.this.getString(2131820575) + " Document";
printManager.print(str, WebActivity.this.webViewPrint.createPrintDocumentAdapter(str), new PrintAttributes.Builder().build());
}
});
}
public boolean onKeyDown(int i, KeyEvent keyEvent) {
if (keyEvent.getAction() == 0 && i == 4) {
if (this.webViewPrint.getVisibility() == 0) {
this.webViewPrint.loadUrl("");
this.webViewPrint.setVisibility(8);
this.floatingActionButtonPrint.setVisibility(8);
return true;
}
if (this.webView.canGoBack()) {
this.webView.goBack();
return true;
}
if (this.webView.canGoBack()) {
return true;
}
this.alertBuilder = new AlertDialog.Builder(this);
View inflate = getLayoutInflater().inflate(R.layout.layout_custom_delete_alert, (ViewGroup) null);
TextView textView = (TextView) inflate.findViewById(R.id.cancel);
TextView textView2 = (TextView) inflate.findViewById(R.id.submit);
((TextView) inflate.findViewById(R.id.textView_sure)).setText("Are you want to exit Web Panel?");
textView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
WebActivity.this.alertDialog.dismiss();
}
});
textView2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
WebActivity.this.alertDialog.dismiss();
WebActivity.this.finish();
}
});
this.alertBuilder.setView(inflate);
AlertDialog create = this.alertBuilder.create();
this.alertDialog = create;
create.setCanceledOnTouchOutside(false);
this.alertDialog.show();
return true;
}
return super.onKeyDown(i, keyEvent);
}
private void getNotification() {
SharedPreferences sharedPreferences = getSharedPreferences("LOGIN", 0);
this.sharedPreferences = sharedPreferences;
Constant.Token = sharedPreferences.getString("TOKEN", null);
Constant.ComId = this.sharedPreferences.getString("COMID", null);
Constant.uId = this.sharedPreferences.getString("UID", null);
ApiClient.getInstance(getApplicationContext()).getApi().getNotification("Bearer " + Constant.Token, Constant.uId).enqueue(new Callback<List<NotificationApps>>() {
@Override
public void onFailure(Call<List<NotificationApps>> call, Throwable th) {
}
@Override
public void onResponse(Call<List<NotificationApps>> call, Response<List<NotificationApps>> response) {
if (response.isSuccessful()) {
WebActivity.this.cookie = response.headers().values("set-Cookie");
} else {
Toast.makeText(WebActivity.this.getApplicationContext(), "" + response.code(), 0).show();
}
}
});
}
}