diff --git a/app/build.gradle b/app/build.gradle index 0ecc6d2..866515d 100755 --- a/app/build.gradle +++ b/app/build.gradle @@ -6,7 +6,7 @@ android { minSdk 24 targetSdk 34 versionCode 1 - versionName "2.2.6" + versionName "2.2.7" multiDexEnabled true testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" //每个应用拥有不同的authorities,防止相同的在同一个手机上无法同时安装 @@ -45,7 +45,7 @@ android { //修改生成的apk名字 android.applicationVariants.all { variant -> variant.outputs.all { - outputFileName = "app-release.apk" + outputFileName = "PMMAPP.apk" } } } @@ -83,6 +83,7 @@ dependencies { androidTestImplementation 'androidx.test.ext:junit:1.1.2' androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' implementation 'com.github.baoyachi:StepView:1.9' + implementation 'io.github.azhon:appupdate:4.2.6' configurations { all*.exclude group: 'com.google.code.gson' } diff --git a/app/src/main/java/com/example/administrator/zhapp/activity/BaseActivity.java b/app/src/main/java/com/example/administrator/zhapp/activity/BaseActivity.java index efacd52..223f892 100755 --- a/app/src/main/java/com/example/administrator/zhapp/activity/BaseActivity.java +++ b/app/src/main/java/com/example/administrator/zhapp/activity/BaseActivity.java @@ -18,10 +18,15 @@ import android.os.Bundle; import android.os.Parcelable; import androidx.annotation.LayoutRes; import androidx.appcompat.widget.Toolbar; + +import android.text.TextUtils; +import android.util.Log; import android.view.View; import android.view.WindowManager; import android.widget.TextView; import android.widget.Toast; + +import com.example.administrator.zhapp.BuildConfig; import com.example.administrator.zhapp.R; import com.example.administrator.zhapp.utils.ControllerActivity; import com.zhy.autolayout.AutoLayoutActivity; @@ -272,4 +277,14 @@ public abstract class BaseActivity extends AutoLayoutActivity { //showToast(result); //Toast.makeText(this, result, Toast.LENGTH_LONG).show(); } + + public void showLog(String logText) { + if (BuildConfig.LOG_ERROR) { + if(TextUtils.isEmpty(logText)){ + Log.i("app", "logText is null"); + }else{ + Log.i("app", logText); + } + } + } } diff --git a/app/src/main/java/com/example/administrator/zhapp/activity/LoginActivity.java b/app/src/main/java/com/example/administrator/zhapp/activity/LoginActivity.java index 626bdb3..088b86d 100755 --- a/app/src/main/java/com/example/administrator/zhapp/activity/LoginActivity.java +++ b/app/src/main/java/com/example/administrator/zhapp/activity/LoginActivity.java @@ -11,7 +11,6 @@ import android.os.Environment; import android.provider.Settings; import android.telephony.TelephonyManager; import android.text.TextUtils; -import android.util.Log; import android.view.KeyEvent; import android.view.View; import android.view.WindowManager; @@ -22,6 +21,7 @@ import android.widget.RadioButton; import android.widget.RadioGroup; import android.widget.TextView; +import com.example.administrator.zhapp.BuildConfig; import com.example.administrator.zhapp.R; import com.example.administrator.zhapp.contans.Contans; import com.example.administrator.zhapp.entity.PhoneInfo; @@ -31,9 +31,9 @@ import com.example.administrator.zhapp.utils.GsonUtils; import com.example.administrator.zhapp.utils.HttpListener; import com.example.administrator.zhapp.utils.NetworkAvailableUtils; import com.example.administrator.zhapp.utils.NohttpUtils; +import com.example.administrator.zhapp.utils.RSAUtils; import com.example.administrator.zhapp.utils.SPUtils; import com.example.administrator.zhapp.utils.UiUtlis; -import com.example.administrator.zhapp.weight.SettingIpDialog; import com.orhanobut.logger.Logger; import com.xiaomi.mipush.sdk.MiPushClient; import com.yanzhenjie.permission.AndPermission; @@ -49,7 +49,6 @@ import java.util.ArrayList; import java.util.List; import androidx.annotation.NonNull; -//import butterknife.BindView; /** * 登录界面 @@ -66,21 +65,9 @@ public class LoginActivity extends BaseActivity { CheckBox savePwUser; private String username; private String pwd; - - //设置是否为测试 - private boolean test = false; - private long exitTime = 0; - //private String ip; - - private String wifiip;//wifi ip - private String mobileip;//4G ip - private boolean first; - private boolean NETWORK_STATE;//网络状态 - private String NEWWORK_TYPE;//网络类型 - @Override public int getContentViewID() { return R.layout.activity_login; @@ -121,157 +108,89 @@ public class LoginActivity extends BaseActivity { } rb1.setChecked((Boolean) SPUtils.get(context, Contans.WIFI_4G, true)); - - rb2.setChecked(!(Boolean) SPUtils.get(context, Contans.WIFI_4G, true)); tvVersion.setText("版本" + getVersionName()); username = (String) SPUtils.get(LoginActivity.this, Contans.USERNAME, ""); - pwd = (String) SPUtils.get(LoginActivity.this, "pwd", ""); - + String UserPwdTemp = (String) SPUtils.get(LoginActivity.this, Contans.USERPWD, ""); boolean save = (boolean) SPUtils.get(LoginActivity.this, "save", true); savePwUser.setChecked(save); et_use.setText(username); - if (save) { - et_pwd.setText(pwd); + if (!TextUtils.isEmpty(UserPwdTemp)) { + pwd = RSAUtils.decryptBASE64StrLocal(UserPwdTemp); + et_pwd.setText(pwd); + } } first = (boolean) SPUtils.get(this, Contans.FIRST, true); - String wifi = (String) SPUtils.get(context, Contans.KEY_WIFI_IP, ""); - String mob = (String) SPUtils.get(context, Contans.KEY_4G_IP, ""); +// String wifi = (String) SPUtils.get(context, Contans.KEY_WIFI_IP, ""); +// String mob = (String) SPUtils.get(context, Contans.KEY_4G_IP, ""); - if (wifi.equals("") && mob.equals("")) { +// if (wifi.equals("") && mob.equals("")) { +// +// //SPUtils.put(this, Contans.KEY_4G_IP, "http://192.168.2.215:9005/"); +// +// SPUtils.put(this, Contans.KEY_4G_IP, "http://219.131.195.3:8081/"); +// SPUtils.put(this, Contans.KEY_WIFI_IP, "http://10.19.0.72:8081/"); +// +// +//// SPUtils.put(this, Contans.KEY_4G_IP, "http://192.168.2.134:8082/"); +//// SPUtils.put(this, Contans.KEY_WIFI_IP, "http://192.168.2.134:8082/"); +// } - SPUtils.put(this, Contans.KEY_4G_IP, "http://219.131.195.3:8081/"); - SPUtils.put(this, Contans.KEY_WIFI_IP, "http://10.19.0.72:8081/"); + if (BuildConfig.LOG_ERROR) { + et_use.setText("FGTL01"); + et_pwd.setText("123"); -// SPUtils.put(this, Contans.KEY_4G_IP, "http://192.168.2.134:8082/"); -// SPUtils.put(this, Contans.KEY_WIFI_IP, "http://192.168.2.134:8082/"); - } +// et_use.setText("310673"); +// et_pwd.setText("Abcd@1234"); -// et_use.setText("310673"); -// et_pwd.setText("Abcd@1234"); - -// et_use.setText("FGTL01"); -// et_pwd.setText("123"); +// et_use.setText("310482"); +// et_pwd.setText("310482"); + } } public void initData() { - findViewById(R.id.button).setOnClickListener(v -> { - - wifiip = (String) SPUtils.get(context, Contans.KEY_WIFI_IP, ""); - - mobileip = (String) SPUtils.get(context, Contans.KEY_4G_IP, ""); - - final SettingIpDialog dialog = new SettingIpDialog(context); - dialog.setWifi_ip(wifiip); - dialog.setMobile_ip(mobileip); - dialog.setCancelOnClick(new View.OnClickListener() { - @Override - public void onClick(View v) { - UiUtlis.hideInput(dialog.getWifi_ip(), context); - - UiUtlis.hideInput(dialog.getMobile_ip(), context); - - dialog.close(); - } - }); - - dialog.setSaveOnClick(new View.OnClickListener() { - @Override - public void onClick(View v) { - if (!TextUtils.isEmpty(dialog.getWifiIp()) - && !TextUtils.isEmpty(dialog.getMobileIp())) { - SPUtils.put(context, Contans.KEY_WIFI_IP, dialog.getWifiIp()); - SPUtils.put(context, Contans.KEY_4G_IP, dialog.getMobileIp()); - UiUtlis.hideInput(dialog.getWifi_ip(), context); - UiUtlis.hideInput(dialog.getMobile_ip(), context); - dialog.close(); - } else { - showToast("ip不能为空"); - } - } - }); - }); - //setTitle("生产管理移动APP登录系统"); btn_login.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - if (Contans.TEST) { - - if (rb1.isChecked()) { - if (!TextUtils.isEmpty((String) SPUtils.get(context, Contans.KEY_WIFI_IP, ""))) { - Contans.IP = (String) SPUtils.get(context, Contans.KEY_WIFI_IP, ""); - - - Log.e("ip", Contans.IP); - - } - } - if (rb2.isChecked()) { - if (!TextUtils.isEmpty((String) SPUtils.get(context, Contans.KEY_4G_IP, ""))) { - Contans.IP = (String) SPUtils.get(context, Contans.KEY_4G_IP, ""); + if (rb1.isChecked()) { + Contans.IP = Contans.IP_INTRANET; + //Contans.IP = "http://192.168.2.215:9005/"; + showLog(Contans.IP); + } + if (rb2.isChecked()) { + Contans.IP = Contans.IP_EXTRANET; + //Contans.IP = "http://192.168.2.215:9005/"; + showLog(Contans.IP); + } - Log.e("ip", Contans.IP); + //如果没网络,然后有账号,直接登录 + if (NetworkAvailableUtils.isNetworkAvailable(context)) { + if (isLogin()) { + String json = getPhoneInfo(); + showLog(json); + showLog(Contans.IP + Contans.LOGIN); - } + Request request = NoHttp.createStringRequest(Contans.IP + Contans.LOGIN, RequestMethod.POST); + request.setDefineRequestBodyForJson(json); + NohttpUtils.getInstance().add(LoginActivity.this, 0, request, callback, true, true, "登录中..."); } - SPUtils.put(LoginActivity.this, Contans.USERNAME, et_use.getText().toString()); - Intent intent = new Intent(LoginActivity.this, MainActivity.class); - startActivity(intent); - } else { - - if (rb1.isChecked()) { - if (!TextUtils.isEmpty((String) SPUtils.get(context, Contans.KEY_WIFI_IP, ""))) { - Contans.IP = (String) SPUtils.get(context, Contans.KEY_WIFI_IP, ""); - - Log.e("ip", Contans.IP); - } - } - if (rb2.isChecked()) { - if (!TextUtils.isEmpty((String) SPUtils.get(context, Contans.KEY_4G_IP, ""))) { - Contans.IP = (String) SPUtils.get(context, Contans.KEY_4G_IP, ""); - - Log.e("ip", Contans.IP); - } - } - - //如果没网络,然后有账号,直接登录 - if (NetworkAvailableUtils.isNetworkAvailable(context)) { - - if (isLogin()) { - - String json = getPhoneInfo(); - - Logger.json(json); - - System.out.println(json); - - Request request = NoHttp.createStringRequest(Contans.IP + Contans.LOGIN, RequestMethod.POST); - - request.setDefineRequestBodyForJson(json); - - NohttpUtils.getInstance().add(LoginActivity.this, 0, request, callback, true, true, "登录中..."); - - - } - } else { - if (isLogin()) { - if (UiUtlis.getText(et_use).equals(SPUtils.get(context, Contans.USERNAME, "")) - && UiUtlis.getText(et_pwd).equals(SPUtils.get(context, "pwd", ""))) { - Intent intent = new Intent(LoginActivity.this, MainActivity.class); - startActivity(intent); - } else { - showToast("你还没有登录过"); - } + if (isLogin()) { + if (UiUtlis.getText(et_use).equals(SPUtils.get(context, Contans.USERNAME, "")) + && UiUtlis.getText(et_pwd).equals(SPUtils.get(context, "pwd", ""))) { + Intent intent = new Intent(LoginActivity.this, MainActivity.class); + startActivity(intent); + } else { + showToast("你还没有登录过"); } } } @@ -292,14 +211,14 @@ public class LoginActivity extends BaseActivity { @Override public void onSucceed(int what, Response response) { - System.out.println("login:" + response.get()); - String json = response.get(); + showLog(json); UserInfo userInfo = GsonUtils.GsonToBean(json, UserInfo.class); if (userInfo != null) { UserInfo.User user = userInfo.getRows().get(0); String status = user.getStatus(); String username = user.getUsernames(); + String token = user.getToken(); if (status.equals("0")) { showToast("用户名或密码错误"); } else if (status.equals("1")) { @@ -312,7 +231,8 @@ public class LoginActivity extends BaseActivity { //如果已经选中记住密码,就保存用户名和密码 SPUtils.put(LoginActivity.this, "save", savePwUser.isChecked()); SPUtils.put(LoginActivity.this, Contans.USERNAME, et_use.getText().toString()); - SPUtils.put(LoginActivity.this, "pwd", et_pwd.getText().toString()); + SPUtils.put(LoginActivity.this, Contans.USERPWD, RSAUtils.encryptBASE64StrLocal(et_pwd.getText().toString())); + SPUtils.put(LoginActivity.this, Contans.LOGIN_TOKEN, RSAUtils.encryptBASE64StrLocal(token)); SPUtils.put(LoginActivity.this, Contans.NAME, username); SPUtils.put(LoginActivity.this, Contans.BZBH, user.getBzbh() == null ? "" : user.getBzbh()); SPUtils.put(LoginActivity.this, Contans.BZMC, user.getBzmc() == null ? "" : user.getBzmc()); diff --git a/app/src/main/java/com/example/administrator/zhapp/activity/MainActivity.java b/app/src/main/java/com/example/administrator/zhapp/activity/MainActivity.java index eb1af1e..7645dcd 100755 --- a/app/src/main/java/com/example/administrator/zhapp/activity/MainActivity.java +++ b/app/src/main/java/com/example/administrator/zhapp/activity/MainActivity.java @@ -1,11 +1,9 @@ package com.example.administrator.zhapp.activity; import android.annotation.SuppressLint; -import android.app.DownloadManager; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; -import android.content.ActivityNotFoundException; import android.content.BroadcastReceiver; import android.content.Context; import android.content.DialogInterface; @@ -16,15 +14,12 @@ import android.content.pm.PackageManager; import android.database.Cursor; import android.graphics.Color; import android.graphics.drawable.ColorDrawable; -import android.net.Uri; -import android.os.Build; import android.os.Bundle; -import android.os.Environment; -import android.provider.Settings; -import androidx.core.content.FileProvider; +import androidx.annotation.NonNull; import androidx.appcompat.app.AlertDialog; import androidx.appcompat.widget.Toolbar; -import android.util.Log; + +import android.text.TextUtils; import android.view.KeyEvent; import android.view.Menu; import android.view.MenuItem; @@ -34,7 +29,8 @@ import android.widget.AdapterView; import android.widget.GridView; import android.widget.ImageView; import android.widget.Toast; - +import com.azhon.appupdate.listener.OnButtonClickListener; +import com.azhon.appupdate.listener.OnDownloadListener; import com.example.administrator.zhapp.DBModel.AjhScInfo; import com.example.administrator.zhapp.DBModel.Ajhjh; import com.example.administrator.zhapp.DBModel.Ajhxcjs; @@ -80,6 +76,7 @@ import com.example.administrator.zhapp.service.UploadDataService; import com.example.administrator.zhapp.utils.ControllerActivity; import com.example.administrator.zhapp.utils.GsonUtils; import com.example.administrator.zhapp.utils.HttpListener; +import com.example.administrator.zhapp.utils.HttpUtils; import com.example.administrator.zhapp.utils.NetworkAvailableUtils; import com.example.administrator.zhapp.utils.NohttpUtils; import com.example.administrator.zhapp.utils.SPUtils; @@ -95,6 +92,8 @@ import java.io.File; import java.util.ArrayList; import java.util.List; +import retrofit2.Call; + public class MainActivity extends BaseActivity { @@ -108,7 +107,6 @@ public class MainActivity extends BaseActivity { private List zys2; private List dialogDatas; private List dialogDatas2; - DownloadManager DM, mDownloadManager; private long downloadId; private boolean isTask = false;//是否有任务 private long exitTime = 0; @@ -219,7 +217,7 @@ public class MainActivity extends BaseActivity { beanList.addAll(getGridViewData(isTask)); gv.setSelector(new ColorDrawable(Color.TRANSPARENT)); - adapter = new GridViewAdapter(this, beanList, item, Contans.TEST); + adapter = new GridViewAdapter(this, beanList, item, false); gv.setAdapter(adapter); @@ -714,43 +712,30 @@ public class MainActivity extends BaseActivity { public void onSucceed(int what, Response response) { try { - ApkUpdateBean bean = GsonUtils.GsonToBean(response.get(), ApkUpdateBean.class); - - if (bean != null) { - - if (!bean.getTotal().equals("0")) { - - final ApkUpdateBean.RowsBean versoinInfo = bean.getRows().get(0); - - Log.e("Versioncode", versoinInfo.getVersioncode()); - Log.e("Versionname", versoinInfo.getVersionname()); - Log.e("getVersionname", getVersionName()); - Log.e("Apkur", versoinInfo.getApkurl()); - Log.e("Apkur2", versoinInfo.getApkurl2()); - - - if (!versoinInfo.getVersionname().equals(getVersionName())) { - dialog = new AuditDialog(context, "发现新版本,是否更新?", new AuditDialog.AuditDialogListener() { - @Override - public void confirm() { - Uri uri = Uri.parse("https://www.pgyer.com/iCaX"); - Intent intent = new Intent(Intent.ACTION_VIEW, uri); - startActivity(intent); - } - - - @Override - public void cancel() { - - } - }); - dialog.show(); + String result = response.get(); + ApkUpdateBean appUploadInfo = GsonUtils.GsonToBean(result, ApkUpdateBean.class); + + if (appUploadInfo != null) { + if (appUploadInfo.getTotal().equals("1")) { + showLog(result); + String appURL = appUploadInfo.getRows().get(0).getApkurl(); + String appversionname = appUploadInfo.getRows().get(0).getVersionname(); + String versioncode = appUploadInfo.getRows().get(0).getVersioncode(); + String appdesc = appUploadInfo.getRows().get(0).getAppdesc(); + +// showLog(getVersionName()); +// showLog(appversionname); +// showLog(versioncode); +// showLog(getVersionName()); + + + if (!appversionname.equals(getVersionName())) { + if(TextUtils.isEmpty(appdesc)){ + appdesc = "1.登录接口调整。\n2.所有接口增加token认证"; + } + DownloadAndInstall(appURL, appversionname, appdesc, versioncode); } - - } - - } } catch (Exception e) { e.printStackTrace(); @@ -766,129 +751,67 @@ public class MainActivity extends BaseActivity { } + private void DownloadAndInstall(String downloadURL, String versionName, String description, String versionCode) { + new com.azhon.appupdate.manager.DownloadManager.Builder(this) + .apkUrl(downloadURL) + .apkName("设备设施巡查.apk") + .smallIcon(R.mipmap.logo1) + .showNewerToast(false) + .apkVersionCode(Integer.parseInt(versionCode)) + .apkVersionName(versionName) + .apkDescription(description) + .enableLog(true) + .jumpInstallPage(true) + .dialogButtonTextColor(Color.WHITE) + .dialogButtonColor(Color.parseColor("#FF8247")) + .dialogProgressBarColor(Color.parseColor("#FF8247")) + .showNotification(true) + .showBgdToast(true) + .forcedUpgrade(true) + .onDownloadListener(new OnDownloadListener() { + @Override + public void start() { - /** - * 下载并跳转到APK安装页面 - * - * @param url - */ - private void downLoadApk(String url) { - - - final String packageName = "com.example.administrator.zhapp"; - int state = context.getPackageManager().getApplicationEnabledSetting(packageName); - //检测下载管理器是否被禁用 - if (state == PackageManager.COMPONENT_ENABLED_STATE_DISABLED - || state == PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER - || state == PackageManager.COMPONENT_ENABLED_STATE_DISABLED_UNTIL_USED) { - AlertDialog.Builder builder = new AlertDialog.Builder(context).setTitle("温馨提示").setMessage - ("系统下载管理器被禁止,需手动打开").setPositiveButton("确定", new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - dialog.dismiss(); - try { - Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); - intent.setData(Uri.parse("package:" + packageName)); - context.startActivity(intent); - } catch (ActivityNotFoundException e) { - Intent intent = new Intent(Settings.ACTION_MANAGE_APPLICATIONS_SETTINGS); - context.startActivity(intent); } - } - }).setNegativeButton("取消", new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - dialog.dismiss(); - } - }); - builder.create().show(); - } else { - //正常下载流程 - DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url)); - request.setAllowedOverRoaming(false); - - //通知栏显示 - request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED); - request.setTitle("设备设施巡查"); - request.setDescription("正在下载中..."); - request.setVisibleInDownloadsUi(true); - - //设置下载的路径 - request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "设备设施巡查.apk"); - - //获取DownloadManager - mDownloadManager = (DownloadManager) context.getSystemService(Context.DOWNLOAD_SERVICE); - downloadId = mDownloadManager.enqueue(request); - context.registerReceiver(mReceiver, new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE)); - } - - } + @Override + public void downloading(int i, int i1) { - private BroadcastReceiver mReceiver = new BroadcastReceiver() { - @Override - public void onReceive(Context context, Intent intent) { - checkStatus(); - } - }; + } - private void checkStatus() { - DownloadManager.Query query = new DownloadManager.Query(); - query.setFilterById(downloadId); - Cursor cursor = mDownloadManager.query(query); - if (cursor.moveToFirst()) { - @SuppressLint("Range") int status = cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_STATUS)); - switch (status) { - //下载暂停 - case DownloadManager.STATUS_PAUSED: - break; - //下载延迟 - case DownloadManager.STATUS_PENDING: - break; - //正在下载 - case DownloadManager.STATUS_RUNNING: - break; - //下载完成 - case DownloadManager.STATUS_SUCCESSFUL: - installAPK(); - break; - //下载失败 - case DownloadManager.STATUS_FAILED: - Toast.makeText(context, "下载失败", Toast.LENGTH_SHORT).show(); - break; - } - } - cursor.close(); - } + @Override + public void done(@NonNull File file) { - /** - * 7.0兼容 - */ - private void installAPK() { + } - Intent intent = new Intent(Intent.ACTION_VIEW); + @Override + public void cancel() { - intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + } - String path = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "/com.example.administrator.zhapp/"; + @Override + public void error(@NonNull Throwable throwable) { - String fileName = "设备设施巡查.apk"; + } + }).onButtonClickListener(new OnButtonClickListener() { + @Override + public void onButtonClick(int i) { - File apkFile = new File(path + fileName); + } + }).build().download(); + } - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { - intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); - Uri apkUri = FileProvider.getUriForFile(context, context.getPackageName() + ".fileprovider", apkFile); - intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); - intent.setDataAndType(apkUri, "application/vnd.android.package-archive"); - } else { - intent.setDataAndType(Uri.fromFile(apkFile), "application/vnd.android.package-a rchive"); - intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + private String getVersionName() { + PackageManager pm = getPackageManager(); + try { + PackageInfo packageInfo = pm.getPackageInfo(getPackageName(), 0); + return packageInfo.versionName; + } catch (Exception e) { + e.printStackTrace(); } - context.startActivity(intent); + return null; } - private void initDialogDatas() { for (BasicDataBean.DataBean bean : zys) { @@ -922,19 +845,19 @@ public class MainActivity extends BaseActivity { } - private String getVersionName() { - //1,包管理者对象packageManager - PackageManager pm = getPackageManager(); - //2,从包的管理者对象中,获取指定包名的基本信息(版本名称,版本号),传0代表获取基本信息 - try { - PackageInfo packageInfo = pm.getPackageInfo(getPackageName(), 0); - //3,获取版本名称 - return packageInfo.versionName; - } catch (Exception e) { - e.printStackTrace(); - } - return null; - } +// private String getVersionName() { +// //1,包管理者对象packageManager +// PackageManager pm = getPackageManager(); +// //2,从包的管理者对象中,获取指定包名的基本信息(版本名称,版本号),传0代表获取基本信息 +// try { +// PackageInfo packageInfo = pm.getPackageInfo(getPackageName(), 0); +// //3,获取版本名称 +// return packageInfo.versionName; +// } catch (Exception e) { +// e.printStackTrace(); +// } +// return null; +// } @Override protected void onDestroy() { diff --git a/app/src/main/java/com/example/administrator/zhapp/activity/ydckgl/WztpScActivity.java b/app/src/main/java/com/example/administrator/zhapp/activity/ydckgl/WztpScActivity.java index 4b34e50..175c407 100755 --- a/app/src/main/java/com/example/administrator/zhapp/activity/ydckgl/WztpScActivity.java +++ b/app/src/main/java/com/example/administrator/zhapp/activity/ydckgl/WztpScActivity.java @@ -290,7 +290,7 @@ public class WztpScActivity extends BaseActivity { File wztpuploadfile = new File(path + stEndName); RequestBody requestFile = RequestBody.create(MediaType.parse("image/*"), wztpuploadfile); MultipartBody.Part body = MultipartBody.Part.createFormData("fileps", wztpuploadfile.getName(), requestFile); - HttpUtils.getApi().uploadwztp( + HttpUtils.getApi(context).uploadwztp( wztp.getItemnum(), wztp.getItemid(), username, diff --git a/app/src/main/java/com/example/administrator/zhapp/contans/Contans.java b/app/src/main/java/com/example/administrator/zhapp/contans/Contans.java index c5209f1..309d54b 100755 --- a/app/src/main/java/com/example/administrator/zhapp/contans/Contans.java +++ b/app/src/main/java/com/example/administrator/zhapp/contans/Contans.java @@ -13,7 +13,10 @@ public class Contans { public static String IP = ""; -public static String CK_BASE_IP ="http://10.19.0.13:80/"; + public static String IP_INTRANET = "http://10.19.0.72:8081/"; + public static String IP_EXTRANET = "http://219.131.195.3:8081/"; + + public static String CK_BASE_IP = "http://10.19.0.13:80/"; public static String UpdateIP = "http://219.131.195.3:8081/"; @@ -29,6 +32,8 @@ public static String CK_BASE_IP ="http://10.19.0.13:80/"; public static String PRINT = "AppTXM/GetData.aspx"; + public final static String LOGIN_TOKEN = "LOGIN_TOKEN"; + // public static String UPLOADAPP = "ApkUpdate/GetData.aspx"; //-----------------------移动仓库管理--------------------------// @@ -189,7 +194,6 @@ public static String CK_BASE_IP ="http://10.19.0.13:80/"; public static String XAQKSB = "AJH/XASB/SaveData.ashx";//卸氨上报--新增 - public final static int IMAGE_RESULT = 10; public final static int SBXJZT_WWC = 0; public final static int SBXJZT_ZC = 1; @@ -260,18 +264,16 @@ public static String CK_BASE_IP ="http://10.19.0.13:80/"; //用户信息 public final static String PERMISSIONSRESULT = "PermissionsResult"; public final static String USERNAME = "enterby"; + public final static String USERPWD = "USERPWD"; public final static String BZBH = "bzbh"; public final static String SITEID = "SITEID"; public final static String ORGID = "ORGID"; - public final static String BZMC = "bzmc"; public final static String NAME = "username"; public static boolean NEWWORK_STATE;//网络状态 - public static boolean TEST = false; - public static String PRINTIP = "10.19.110.19";//打印机的IP } \ No newline at end of file diff --git a/app/src/main/java/com/example/administrator/zhapp/entity/ApkUpdateBean.java b/app/src/main/java/com/example/administrator/zhapp/entity/ApkUpdateBean.java index 165bc8f..1cec30f 100644 --- a/app/src/main/java/com/example/administrator/zhapp/entity/ApkUpdateBean.java +++ b/app/src/main/java/com/example/administrator/zhapp/entity/ApkUpdateBean.java @@ -37,6 +37,8 @@ public class ApkUpdateBean { private String apkurl2; private String bz; + private String appdesc=""; + public String getApkurl2() { return apkurl2; } @@ -77,5 +79,13 @@ public class ApkUpdateBean { public void setBz(String bz) { this.bz = bz; } + + public String getAppdesc() { + return appdesc; + } + + public void setAppdesc(String appdesc) { + this.appdesc = appdesc; + } } } diff --git a/app/src/main/java/com/example/administrator/zhapp/entity/UserInfo.java b/app/src/main/java/com/example/administrator/zhapp/entity/UserInfo.java index 4d81686..e83de4f 100755 --- a/app/src/main/java/com/example/administrator/zhapp/entity/UserInfo.java +++ b/app/src/main/java/com/example/administrator/zhapp/entity/UserInfo.java @@ -36,6 +36,7 @@ public class UserInfo { private String PermissionsResult; private String SITEID; private String ORGID; + private String token; public String getPermissionsResult() { return PermissionsResult; @@ -92,5 +93,13 @@ public class UserInfo { public void setORGID(String ORGID) { this.ORGID = ORGID; } + + public String getToken() { + return token; + } + + public void setToken(String token) { + this.token = token; + } } } diff --git a/app/src/main/java/com/example/administrator/zhapp/fragment/BaseFragment.java b/app/src/main/java/com/example/administrator/zhapp/fragment/BaseFragment.java index b62aef4..d1f0642 100755 --- a/app/src/main/java/com/example/administrator/zhapp/fragment/BaseFragment.java +++ b/app/src/main/java/com/example/administrator/zhapp/fragment/BaseFragment.java @@ -7,11 +7,16 @@ import android.os.Bundle; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.fragment.app.Fragment; + +import android.text.TextUtils; +import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.Toast; +import com.example.administrator.zhapp.BuildConfig; + /** * Created by Administrator on 2016/9/icon5. */ @@ -70,4 +75,14 @@ public abstract class BaseFragment extends Fragment { public void showToast(int strId) { Toast.makeText(getContext(), strId, Toast.LENGTH_SHORT).show(); } + + public void showLog(String logText) { + if (BuildConfig.LOG_ERROR) { + if (TextUtils.isEmpty(logText)) { + Log.i("app", "logText is null"); + } else { + Log.i("app", logText); + } + } + } } diff --git a/app/src/main/java/com/example/administrator/zhapp/fragment/sbxdjgl/DjdscFragment.java b/app/src/main/java/com/example/administrator/zhapp/fragment/sbxdjgl/DjdscFragment.java index d4aac74..b890126 100755 --- a/app/src/main/java/com/example/administrator/zhapp/fragment/sbxdjgl/DjdscFragment.java +++ b/app/src/main/java/com/example/administrator/zhapp/fragment/sbxdjgl/DjdscFragment.java @@ -3,6 +3,8 @@ package com.example.administrator.zhapp.fragment.sbxdjgl; import android.content.ContentValues; import android.content.DialogInterface; import androidx.appcompat.app.AlertDialog; + +import android.text.TextUtils; import android.view.View; import android.widget.AdapterView; import android.widget.Button; @@ -25,6 +27,7 @@ import com.example.administrator.zhapp.fragment.BaseFragment; import com.example.administrator.zhapp.utils.GsonUtils; import com.example.administrator.zhapp.utils.HttpListener; import com.example.administrator.zhapp.utils.HttpResponseListener; +import com.example.administrator.zhapp.utils.RSAUtils; import com.example.administrator.zhapp.utils.SPUtils; import com.example.administrator.zhapp.utils.UiUtlis; import com.example.administrator.zhapp.weight.WaitDialog; @@ -374,6 +377,19 @@ public class DjdscFragment extends BaseFragment { //计划 Request request = NoHttp.createStringRequest(Contans.IP + Contans.DJJHSC, RequestMethod.POST); request.setDefineRequestBodyForJson(UiUtlis.encoder(json)); + + String tokenTemp = (String) SPUtils.get(mActivity, Contans.LOGIN_TOKEN, ""); + if(!TextUtils.isEmpty(tokenTemp)){ + String token = RSAUtils.decryptBASE64StrLocal(tokenTemp);; + String credential = "Bearer " + token; + request.addHeader("Authorization", credential); + showLog(request.url()); +// if(!TextUtils.isEmpty(token)){ +// showLog(credential); +// showLog(new Gson().toJson(request.headers())); +// } + } + queue.add(0, request, new HttpResponseListener<>(getActivity(), request, callback, false, false, "")); //NohttpUtils.getInstance().add(getActivity(), 0, request, callback, true, false, "上传中..."); @@ -388,6 +404,18 @@ public class DjdscFragment extends BaseFragment { System.out.println(qxgdjson); qxgdjson = new String(qxgdjson.getBytes(), StandardCharsets.UTF_8); request1.setDefineRequestBodyForJson(UiUtlis.encoder(qxgdjson)); + + if(!TextUtils.isEmpty(tokenTemp)){ + String token = RSAUtils.decryptBASE64StrLocal(tokenTemp);; + String credential = "Bearer " + token; + request1.addHeader("Authorization", credential); + showLog(request.url()); +// if(!TextUtils.isEmpty(token)){ +// showLog(credential); +// showLog(new Gson().toJson(request.headers())); +// } + } + queue.add(1, request1, new HttpResponseListener<>(getActivity(), request1, callback, false, false, "")); //NohttpUtils.getInstance().add(getActivity(), 1, request1, callback, true, false, "上传中..."); } @@ -400,6 +428,18 @@ public class DjdscFragment extends BaseFragment { "&jhid=" + UiUtlis.encoder(info.getJhid()) + "&pointnum=" + UiUtlis.encoder(info.getPointnum()) + "&djr=" + UiUtlis.encoder(info.getDjr()), RequestMethod.POST); xcjs.add(Contans.FILEPS, new FileBinary(new File(info.getFilename()))); + + if(!TextUtils.isEmpty(tokenTemp)){ + String token = RSAUtils.decryptBASE64StrLocal(tokenTemp);; + String credential = "Bearer " + token; + xcjs.addHeader("Authorization", credential); + showLog(request.url()); +// if(!TextUtils.isEmpty(token)){ +// showLog(credential); +// showLog(new Gson().toJson(request.headers())); +// } + } + queue.add(2, xcjs, new HttpResponseListener<>(getActivity(), xcjs, callback, false, false, "")); //NohttpUtils.getInstance().add(getActivity(), 2, xcjs, callback, true, false, "上传中..."); diff --git a/app/src/main/java/com/example/administrator/zhapp/fragment/sbxdjgl/XzjhFragment.java b/app/src/main/java/com/example/administrator/zhapp/fragment/sbxdjgl/XzjhFragment.java index 13f6ed3..a21e107 100755 --- a/app/src/main/java/com/example/administrator/zhapp/fragment/sbxdjgl/XzjhFragment.java +++ b/app/src/main/java/com/example/administrator/zhapp/fragment/sbxdjgl/XzjhFragment.java @@ -3,6 +3,7 @@ package com.example.administrator.zhapp.fragment.sbxdjgl; import android.content.ContentValues; import android.content.DialogInterface; import android.os.Bundle; +import android.text.TextUtils; import android.util.Log; import android.view.View; import android.widget.AdapterView; @@ -27,6 +28,8 @@ import com.example.administrator.zhapp.fragment.BaseFragment; import com.example.administrator.zhapp.utils.GsonUtils; import com.example.administrator.zhapp.utils.HttpListener; import com.example.administrator.zhapp.utils.HttpResponseListener; +import com.example.administrator.zhapp.utils.RSAUtils; +import com.example.administrator.zhapp.utils.SPUtils; import com.example.administrator.zhapp.utils.UiUtlis; import com.example.administrator.zhapp.weight.WaitDialog; import com.yolanda.nohttp.NoHttp; @@ -203,6 +206,19 @@ public class XzjhFragment extends BaseFragment { selectCount++; Request request = NoHttp.createStringRequest(Contans.IP + Contans.DJJHDLB); request.add("JHID", UiUtlis.encoder(jhid)); + + String tokenTemp = (String) SPUtils.get(mActivity, Contans.LOGIN_TOKEN, ""); + if(!TextUtils.isEmpty(tokenTemp)){ + String token = RSAUtils.decryptBASE64StrLocal(tokenTemp);; + String credential = "Bearer " + token; + request.addHeader("Authorization", credential); + showLog(request.url()); +// if(!TextUtils.isEmpty(token)){ +// showLog(credential); +// showLog(new Gson().toJson(request.headers())); +// } + } + queue.add(1, request, new HttpResponseListener<>(getActivity(), request, callback, false, false, "")); } diff --git a/app/src/main/java/com/example/administrator/zhapp/service/PushService.java b/app/src/main/java/com/example/administrator/zhapp/service/PushService.java index c231623..09ca0d7 100755 --- a/app/src/main/java/com/example/administrator/zhapp/service/PushService.java +++ b/app/src/main/java/com/example/administrator/zhapp/service/PushService.java @@ -93,10 +93,10 @@ public class PushService extends IntentService { } Request qy = NoHttp.createStringRequest(Contans.IP + Contans.QY); - NohttpUtils.getInstance().add(null, 12, qy, callback, false, false, ""); + NohttpUtils.getInstance().addNoProgress(this, 12, qy, callback); Request ck_ip = NoHttp.createStringRequest(Contans.IP + Contans.GET_CK_IP); - NohttpUtils.getInstance().add(null, 14, ck_ip, callback, false, false, ""); + NohttpUtils.getInstance().addNoProgress(this, 14, ck_ip, callback); for (int i = 0; i < what.length; i++) { @@ -106,28 +106,28 @@ public class PushService extends IntentService { Request xfbw = NoHttp.createStringRequest(Contans.IP + Contans.XFDJJHALL); String str = (String) SPUtils.get(getApplicationContext(), Contans.BZBH, "152145221"); xfbw.add("bzbh", UiUtlis.encoder(str)); - NohttpUtils.getInstance().add(null, 0, xfbw, callback, false, false, ""); + NohttpUtils.getInstance().addNoProgress(this, 0, xfbw, callback); break; //点检 case 1: Request dj = NoHttp.createStringRequest(Contans.IP + Contans.DJJHLIST); dj.add("BZMC", UiUtlis.encoder((String) SPUtils.get(getApplicationContext(), Contans.BZBH, "12108080101"))); - NohttpUtils.getInstance().add(null, 1, dj, callback, false, false, "加载中..."); + NohttpUtils.getInstance().addNoProgress(this, 1, dj, callback); Request zy = NoHttp.createStringRequest(Contans.IP + Contans.QXGDZY); - NohttpUtils.getInstance().add(null, 11, zy, callback, false, false, ""); + NohttpUtils.getInstance().addNoProgress(this, 11, zy, callback); break; //安建环 case 2: Request request = NoHttp.createStringRequest(Contans.IP + Contans.AJHJHLIST); request.add("BZMC", UiUtlis.encoder((String) SPUtils.get(getApplicationContext(), Contans.BZBH, "12108030201"))); - NohttpUtils.getInstance().add(null, 2, request, callback, false, false, ""); + NohttpUtils.getInstance().addNoProgress(this, 2, request, callback); break; //行为安全观察 case 3: Request xwaq = NoHttp.createStringRequest(Contans.IP + Contans.XWAQGC); xwaq.add("gh", (String) SPUtils.get(getApplicationContext(), Contans.USERNAME, "310194")); - NohttpUtils.getInstance().add(null, 3, xwaq, callback, false, false, ""); + NohttpUtils.getInstance().addNoProgress(this, 3, xwaq, callback); break; } } diff --git a/app/src/main/java/com/example/administrator/zhapp/service/UploadDataService.java b/app/src/main/java/com/example/administrator/zhapp/service/UploadDataService.java index 80b7b9d..c8b7075 100755 --- a/app/src/main/java/com/example/administrator/zhapp/service/UploadDataService.java +++ b/app/src/main/java/com/example/administrator/zhapp/service/UploadDataService.java @@ -3,7 +3,10 @@ package com.example.administrator.zhapp.service; import android.app.IntentService; import android.content.Intent; import android.content.Context; +import android.text.TextUtils; +import android.util.Log; +import com.example.administrator.zhapp.BuildConfig; import com.example.administrator.zhapp.DBModel.AjhScInfo; import com.example.administrator.zhapp.DBModel.Ajhjh; import com.example.administrator.zhapp.DBModel.Ajhxcjs; @@ -581,4 +584,13 @@ public class UploadDataService extends IntentService { Logger.json(json); return json; } + public void showLog(String logText) { + if (BuildConfig.LOG_ERROR) { + if(TextUtils.isEmpty(logText)){ + Log.i("app", "logText is null"); + }else{ + Log.i("app", logText); + } + } + } } diff --git a/app/src/main/java/com/example/administrator/zhapp/utils/HttpResponseListenerNoProgress.java b/app/src/main/java/com/example/administrator/zhapp/utils/HttpResponseListenerNoProgress.java index 32691b5..176250b 100644 --- a/app/src/main/java/com/example/administrator/zhapp/utils/HttpResponseListenerNoProgress.java +++ b/app/src/main/java/com/example/administrator/zhapp/utils/HttpResponseListenerNoProgress.java @@ -1,2 +1,88 @@ -package com.example.administrator.zhapp.utils;public class HttpResponseListenerNoProgress { -} +package com.example.administrator.zhapp.utils; + + +import android.app.Activity; +import android.widget.Toast; +import com.yolanda.nohttp.error.NetworkError; +import com.yolanda.nohttp.error.TimeoutError; +import com.yolanda.nohttp.error.URLError; +import com.yolanda.nohttp.error.UnKnownHostError; +import com.yolanda.nohttp.rest.OnResponseListener; +import com.yolanda.nohttp.rest.Request; +import com.yolanda.nohttp.rest.Response; + +/** + * NoHttp的封装 + */ +public class HttpResponseListenerNoProgress implements OnResponseListener { + + + /** + * 当前请求 + */ + private Request mRequest; + + /** + * 请求回调 + */ + private HttpListener callback; + + + + /** + * @param mRequest 请求 + * @param callback 请求回调 + */ + public HttpResponseListenerNoProgress(final Request mRequest, HttpListener callback) { + this.mRequest = mRequest; + this.callback = callback; + } + + /** + * 请求开始 + * + * @param what + */ + @Override + public void onStart(int what) { + + } + + /** + * 成功回调 + * + * @param what + * @param response + */ + @Override + public void onSucceed(int what, Response response) { + if (callback != null) { + try { + callback.onSucceed(what, response); + } catch (Exception e) { + e.printStackTrace(); + } + } + } + + /** + * 失败回调 + * + * @param what + * @param response + */ + @Override + public void onFailed(int what, Response response) { + if (callback != null) + callback.onFailed(what, response); + } + + /** + * 请求结束 + * + * @param what + */ + @Override + public void onFinish(int what) { + } +} \ No newline at end of file diff --git a/app/src/main/java/com/example/administrator/zhapp/utils/HttpUtils.java b/app/src/main/java/com/example/administrator/zhapp/utils/HttpUtils.java index 24a7714..377913d 100644 --- a/app/src/main/java/com/example/administrator/zhapp/utils/HttpUtils.java +++ b/app/src/main/java/com/example/administrator/zhapp/utils/HttpUtils.java @@ -1,8 +1,12 @@ package com.example.administrator.zhapp.utils; import android.content.Context; +import android.text.TextUtils; import android.util.Log; +import androidx.annotation.NonNull; + +import com.example.administrator.zhapp.BuildConfig; import com.example.administrator.zhapp.contans.Contans; import java.io.IOException; @@ -40,21 +44,21 @@ public class HttpUtils { private HttpUtils(Context context, String url) { Retrofit mRetrofit = new Retrofit.Builder() .baseUrl(url) - .client(getOkHttpClient()) + .client(getOkHttpClient(context)) .addConverterFactory(GsonConverterFactory.create()) .build(); api = mRetrofit.create(Api.class); HttpUtils.context = context; } - public static Api getApi() { - return getApi(Contans.IP); + public static Api getApi(Context context) { + return getApi(Contans.IP, context); } - public static Api getDownLoadApi() { + public static Api getDownLoadApi(Context context) { Retrofit mRetrofit = new Retrofit.Builder() - .client(getOkHttpClient()) + .client(getOkHttpClient(context)) .addConverterFactory(GsonConverterFactory.create()) .build(); Api api = mRetrofit.create(Api.class); @@ -62,11 +66,11 @@ public class HttpUtils { return api; } - public static Api getApi(String url) { + public static Api getApi(String url, Context context) { Retrofit mRetrofit = new Retrofit.Builder() .baseUrl(url) - .client(getOkHttpClient()) + .client(getOkHttpClient(context)) .addConverterFactory(GsonConverterFactory.create()) .build(); Api api = mRetrofit.create(Api.class); @@ -75,12 +79,10 @@ public class HttpUtils { } - - - private static OkHttpClient getOkHttpClient() { - - OkHttpClient.Builder httpClientBuilder = new OkHttpClient - .Builder(); + private static OkHttpClient getOkHttpClient(Context context) { + HttpUtils.context = context; + OkHttpClient.Builder httpClientBuilder = new OkHttpClient.Builder(); + httpClientBuilder.addNetworkInterceptor(new TokenHeaderInterceptor()); //OkHttp进行添加拦截器loggingInterceptor httpClientBuilder.addInterceptor(new LoggingInterceptor()); @@ -92,6 +94,22 @@ public class HttpUtils { return httpClientBuilder.build(); } + public static class TokenHeaderInterceptor implements Interceptor { + @NonNull + @Override + public Response intercept(@NonNull Chain chain) throws IOException { + String tokenTemp = (String) SPUtils.get(context, Contans.LOGIN_TOKEN, ""); + if (!TextUtils.isEmpty(tokenTemp)) { + String token = RSAUtils.decryptBASE64StrLocal(tokenTemp); + String credential = "Bearer " + token; + Request originalRequest = chain.request(); + Request updateRequest = originalRequest.newBuilder().header("Authorization", credential).build(); + return chain.proceed(updateRequest); + } + return chain.proceed(chain.request()); + } + } + public static class LoggingInterceptor implements Interceptor { @Override public Response intercept(Interceptor.Chain chain) throws IOException { @@ -99,7 +117,7 @@ public class HttpUtils { Request request = chain.request(); long t1 = System.nanoTime();//请求发起的时间 - Log.d("okhttpmsg", String.format("发送请求 %s on %s%n%s", + showLog(String.format("发送请求 %s on %s%n%s", request.url(), chain.connection(), request.headers())); Response response = chain.proceed(request); @@ -111,7 +129,7 @@ public class HttpUtils { //个新的response给应用层处理 ResponseBody responseBody = response.peekBody(1024 * 1024); - Log.d("okhttpmsg", String.format("接收响应: [%s] %n返回json:【%s】 %.1fms%n%s", + showLog(String.format("接收响应: [%s] %n返回json:【%s】 %.1fms%n%s", response.request().url(), responseBody.string(), (t2 - t1) / 1e6d, @@ -120,4 +138,14 @@ public class HttpUtils { return response; } } + + public static void showLog(String logText) { + if (BuildConfig.LOG_ERROR) { + if (TextUtils.isEmpty(logText)) { + Log.i("app", "logText is null"); + } else { + Log.i("app", logText); + } + } + } } \ No newline at end of file diff --git a/app/src/main/java/com/example/administrator/zhapp/utils/NohttpUtils.java b/app/src/main/java/com/example/administrator/zhapp/utils/NohttpUtils.java index ad7438f..0fb4b95 100755 --- a/app/src/main/java/com/example/administrator/zhapp/utils/NohttpUtils.java +++ b/app/src/main/java/com/example/administrator/zhapp/utils/NohttpUtils.java @@ -1,7 +1,12 @@ package com.example.administrator.zhapp.utils; import android.app.Activity; +import android.content.Context; +import android.text.TextUtils; +import android.util.Log; +import com.example.administrator.zhapp.BuildConfig; +import com.example.administrator.zhapp.contans.Contans; import com.yolanda.nohttp.NoHttp; import com.yolanda.nohttp.download.DownloadQueue; import com.yolanda.nohttp.rest.Request; @@ -62,14 +67,61 @@ public class NohttpUtils { * @param */ public void add(Activity mActivity, int what, Request request, HttpListener callback, boolean canCanel, boolean isLoading, String msg) { + String tokenTemp = (String) SPUtils.get(mActivity, Contans.LOGIN_TOKEN, ""); + if(!TextUtils.isEmpty(tokenTemp)){ + String token = RSAUtils.decryptBASE64StrLocal(tokenTemp);; + String credential = "Bearer " + token; + request.addHeader("Authorization", credential); + showLog(request.url()); +// if(!TextUtils.isEmpty(token)){ +// showLog(credential); +// showLog(new Gson().toJson(request.headers())); +// } + } mQueue.add(what, request, new HttpResponseListener(mActivity, request, callback, canCanel, isLoading, msg)); } public void add(Activity mActivity, int what, Request request, HttpListener callback) { + String tokenTemp = (String) SPUtils.get(mActivity, Contans.LOGIN_TOKEN, ""); + if(!TextUtils.isEmpty(tokenTemp)){ + String token = RSAUtils.decryptBASE64StrLocal(tokenTemp);; + String credential = "Bearer " + token; + request.addHeader("Authorization", credential); + showLog(request.url()); +// if(!TextUtils.isEmpty(token)){ +// showLog(credential); +// showLog(new Gson().toJson(request.headers())); +// } + } mQueue.add(what, request, new HttpResponseListener(mActivity, request, callback, true, true, "加载中...")); } + public void addNoProgress(Context context, int what, Request request, HttpListener callback) { + String tokenTemp = (String) SPUtils.get(context, Contans.LOGIN_TOKEN, ""); + if(!TextUtils.isEmpty(tokenTemp)){ + String token = RSAUtils.decryptBASE64StrLocal(tokenTemp);; + String credential = "Bearer " + token; + request.addHeader("Authorization", credential); + showLog(request.url()); +// if(!TextUtils.isEmpty(token)){ +// showLog(credential); +// showLog(new Gson().toJson(request.headers())); +// } + } + mQueue.add(what, request, new HttpResponseListenerNoProgress(request, callback)); + } + + public void showLog(String logText) { + if (BuildConfig.LOG_ERROR) { + if(TextUtils.isEmpty(logText)){ + Log.i("app", "logText is null"); + }else{ + Log.i("app", logText); + } + } + } + /** * 取消这个sign这个标记的所有请求 * diff --git a/app/src/main/java/com/example/administrator/zhapp/utils/RSAUtils.java b/app/src/main/java/com/example/administrator/zhapp/utils/RSAUtils.java index 2989353..4b20e22 100644 --- a/app/src/main/java/com/example/administrator/zhapp/utils/RSAUtils.java +++ b/app/src/main/java/com/example/administrator/zhapp/utils/RSAUtils.java @@ -1,4 +1,4 @@ -package com.rehome.zhdcoa.utils; +package com.example.administrator.zhapp.utils; import android.util.Base64; diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml index 3f19f96..aa2ee6f 100755 --- a/app/src/main/res/layout/activity_login.xml +++ b/app/src/main/res/layout/activity_login.xml @@ -39,17 +39,6 @@ android:visibility="gone" /> -