|
@@ -3,6 +3,8 @@ package com.mylove.okhttp;
|
|
|
import android.Manifest;
|
|
|
import android.content.Intent;
|
|
|
import android.os.Bundle;
|
|
|
+import android.os.Environment;
|
|
|
+import android.util.Base64;
|
|
|
import android.view.View;
|
|
|
|
|
|
import androidx.annotation.Nullable;
|
|
@@ -13,11 +15,14 @@ import com.benyanyi.okhttp.OkHttpUtil;
|
|
|
import com.benyanyi.okhttp.download.DownloadInfo;
|
|
|
import com.benyanyi.okhttp.listener.OnDownLoadObserver;
|
|
|
import com.benyanyi.okhttp.listener.OnOkHttpListener;
|
|
|
-import com.benyanyi.permissionlib.PermissionCallBack;
|
|
|
import com.benyanyi.permissionlib.PermissionHelper;
|
|
|
-import com.benyanyi.permissionlib.PermissionType;
|
|
|
-import com.benyanyi.permissionlib.msg.FailureMsg;
|
|
|
+import com.benyanyi.permissionlib.callback.PermissionCallBack;
|
|
|
+import com.benyanyi.permissionlib.type.PermissionType;
|
|
|
|
|
|
+import java.io.File;
|
|
|
+import java.io.FileInputStream;
|
|
|
+import java.io.IOException;
|
|
|
+import java.io.InputStream;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.Map;
|
|
|
|
|
@@ -38,41 +43,35 @@ public class MainActivity extends AppCompatActivity {
|
|
|
findViewById(R.id.but).setOnClickListener(new View.OnClickListener() {
|
|
|
@Override
|
|
|
public void onClick(View v) {
|
|
|
- PermissionHelper.getInstance(MainActivity.this).hasPermission(0x11, new PermissionCallBack() {
|
|
|
- @Override
|
|
|
- public void onPermissionSuccess(int permissionCode) {
|
|
|
- Intent intent = new Intent(MainActivity.this, DownloadActivity.class);
|
|
|
- startActivity(intent);
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public void onPermissionFailure(FailureMsg failureMsg) {
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public void onPermissionComplete(int permissionCode) {
|
|
|
-
|
|
|
- }
|
|
|
- }, Manifest.permission.WRITE_EXTERNAL_STORAGE);
|
|
|
+ PermissionHelper.with(MainActivity.this)
|
|
|
+ .setPermissions(Manifest.permission.WRITE_EXTERNAL_STORAGE)
|
|
|
+ .request(new PermissionCallBack() {
|
|
|
+ @Override
|
|
|
+ public void onSuccess() {
|
|
|
+// Intent intent = new Intent(MainActivity.this, DownloadActivity.class);
|
|
|
+// startActivity(intent);
|
|
|
+ upload();
|
|
|
+ }
|
|
|
+ });
|
|
|
}
|
|
|
});
|
|
|
- OkHttpUtil.getInstance(this).url("http://apitest.yanyi.online/app/update").getText(null).async(new OnOkHttpListener<Object>() {
|
|
|
- @Override
|
|
|
- public void onCompleted() {
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public void onSuccess(Object message) {
|
|
|
- Jlog.d(message);
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public void onFailure(Throwable t) {
|
|
|
+// OkHttpUtil.getInstance(this).url("http://apitest.yanyi.online/app/update").getText(null).async(new OnOkHttpListener<Object>() {
|
|
|
+// @Override
|
|
|
+// public void onCompleted() {
|
|
|
+//
|
|
|
+// }
|
|
|
+//
|
|
|
+// @Override
|
|
|
+// public void onSuccess(Object message) {
|
|
|
+// Jlog.d(message);
|
|
|
+// }
|
|
|
+//
|
|
|
+// @Override
|
|
|
+// public void onFailure(Throwable t) {
|
|
|
+//
|
|
|
+// }
|
|
|
+// });
|
|
|
|
|
|
- }
|
|
|
- });
|
|
|
// init();
|
|
|
// PermissionHelper.getInstance(this).hasPermission(0x11, new PermissionCallBack() {
|
|
|
// @Override
|
|
@@ -118,22 +117,82 @@ public class MainActivity extends AppCompatActivity {
|
|
|
|
|
|
public void onClick(View view) {
|
|
|
String[] strings = new String[]{PermissionType.STORAGE};
|
|
|
- PermissionHelper.getInstance(this).hasPermission(1, new PermissionCallBack() {
|
|
|
+ PermissionHelper.with(this).setPermissions(strings).request(new PermissionCallBack() {
|
|
|
@Override
|
|
|
- public void onPermissionSuccess(int permissionCode) {
|
|
|
+ public void onSuccess() {
|
|
|
startActivity(new Intent(MainActivity.this, DownloadActivity.class));
|
|
|
}
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ private void upload() {
|
|
|
+ String path = Environment.getExternalStorageDirectory() + "/DCIM/camera/IMG_20190620_082204.jpg";
|
|
|
+ String path1 = Environment.getExternalStorageDirectory() + "/tencent/micromsg/weixin/mmexport1528644702092.jpg";
|
|
|
+ File file = new File(path);
|
|
|
+ File file1 = new File(path1);
|
|
|
+ Map<Object, Object> oMap = new HashMap<>();
|
|
|
+ oMap.put("sn", "2023022100001_孟*杰_0034");
|
|
|
+ oMap.put("device_no", "123456");
|
|
|
+ oMap.put("appid", "37bU34uZPTUjzGZTsZ8eSh");
|
|
|
+ oMap.put("timestamp", System.currentTimeMillis() / 1000 + "");
|
|
|
+ oMap.put("sign", sign(oMap));
|
|
|
+ oMap.put("origin_image", fileToBase64(file));
|
|
|
+ oMap.put("photo_image", fileToBase64(file1));
|
|
|
+ for (Map.Entry<Object, Object> entry : oMap.entrySet()) {
|
|
|
+ if (entry.getValue().toString().length() <= 10) {
|
|
|
+ Jlog.d(entry.getKey() + "=" + entry.getValue());
|
|
|
|
|
|
+ } else {
|
|
|
+ Jlog.d(entry.getKey() + "=" + (entry.getValue().toString().substring(0, 20)));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ OkHttpUtil.getInstance(this).url("https://opend.icaiji.com.cn/wxapp/v6/photo").postText(null, oMap).async(new OnOkHttpListener<Object>() {
|
|
|
@Override
|
|
|
- public void onPermissionFailure(FailureMsg failureMsg) {
|
|
|
+ public void onCompleted() {
|
|
|
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public void onPermissionComplete(int permissionCode) {
|
|
|
+ public void onSuccess(Object message) {
|
|
|
+ Jlog.d(message);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onFailure(Throwable t) {
|
|
|
+
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ private String sign(Map<Object, Object> oMap) {
|
|
|
+ Map<String, String> map = new HashMap<>();
|
|
|
+ for (Map.Entry<Object, Object> entry : oMap.entrySet()) {
|
|
|
+ map.put(entry.getKey().toString(), entry.getValue().toString());
|
|
|
+ }
|
|
|
+ map.put("secret", "3sx9NNhVGEEEouhoenA5aJ");
|
|
|
+ return MD5Utils.getSignToken(map);
|
|
|
+ }
|
|
|
|
|
|
+ private String fileToBase64(File file) {
|
|
|
+ String base64 = null;
|
|
|
+ InputStream in = null;
|
|
|
+ try {
|
|
|
+ in = new FileInputStream(file);
|
|
|
+ byte[] bytes = new byte[in.available()];
|
|
|
+ int length = in.read(bytes);
|
|
|
+ base64 = Base64.encodeToString(bytes, 0, length, Base64.DEFAULT);
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ } finally {
|
|
|
+ try {
|
|
|
+ if (in != null) {
|
|
|
+ in.close();
|
|
|
+ }
|
|
|
+ } catch (IOException e) {
|
|
|
+ e.printStackTrace();
|
|
|
}
|
|
|
- }, strings);
|
|
|
+ return base64;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
private void init() {
|