Commit eec89ae2 by 罗翻

修改人脸识别存储图片的兼容性

parent 7983e9c4
......@@ -91,22 +91,36 @@ public class ConUtil {
// File mediaStorageDir = mContext.getExternalFilesDir(Constant.cacheImage);
String jpgFileName = System.currentTimeMillis() + "" + new Random().nextInt(1000000) + "_" + key + ".jpg";
File file = new File(Environment.getExternalStorageDirectory() + "/dayu/", jpgFileName);
// if (!mediaStorageDir.exists()) {
// if (!mediaStorageDir.mkdirs()) {
// return null;
// }
// }
boolean sdCardExist = Environment.getExternalStorageState()
.equals(android.os.Environment.MEDIA_MOUNTED); //判断sd卡是否存在
File file;
if (sdCardExist) {
file = new File(Environment.getExternalStorageDirectory() + "/dayu/");
if (!file.exists()) {
file.mkdirs();
}
file = new File(file, jpgFileName);
} else {
file = new File(mContext.getCacheDir() + "/dayu/");
if (!file.exists()) {
file.mkdirs();
}
file = new File(file, jpgFileName);
}
BufferedOutputStream bos = null;
FileOutputStream fos = null;
try {
fos = new FileOutputStream(file.getAbsolutePath());
bos = new BufferedOutputStream(fos);
bos.write(data);
return file;
} catch (Exception e) {
e.printStackTrace();
} finally {
......
......@@ -7,4 +7,5 @@ isMessageModule=true
isOrderModule=true
##maven依赖
mavenMode=false
BASE_URL=http://47.94.101.239:3112
\ No newline at end of file
BASE_URL=http://47.94.101.239:3112
Android.useDeprecatedNdk=true
\ No newline at end of file
......@@ -2,6 +2,8 @@ package com.dayu.order.presenter.orderdoing;
import android.databinding.ObservableField;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import com.dayu.common.BaseApplication;
import com.dayu.common.Constants;
......@@ -15,8 +17,12 @@ import com.dayu.order.ui.activity.OrderLivenessActivity;
import com.dayu.order.ui.fragment.OrderThreeTabFragment;
import com.dayu.provider.event.RefreshTab;
import com.dayu.utils.AppManager;
import com.dayu.utils.ToastUtils;
import com.dayu.utils.UserManager;
import com.dayu.widgets.CustomDialog;
import com.megvii.idcardlib.util.ConUtil;
import com.megvii.licensemanager.Manager;
import com.megvii.livenessdetection.LivenessLicenseManager;
import com.umeng.analytics.MobclickAgent;
import org.greenrobot.eventbus.EventBus;
......@@ -36,11 +42,11 @@ import static com.dayu.utils.UIUtils.getString;
*/
public class OrderDoingPresenter extends orderDoingContract.Presenter {
private ObservableField<Object> datas = new ObservableField<>();
private static final int PAGE_INTO_LIVENESS = 100;
private int mUserId;
private int mSiteId;
private int mState;
private int mPage;
private Handler mHandler;
@Override
public void onAttached() {
......@@ -117,9 +123,7 @@ public class OrderDoingPresenter extends orderDoingContract.Presenter {
CustomDialog customDialog = new CustomDialog(AppManager.getInstance().currentActivity(), R.style.CustomDialog, "为了保证您的账号安全和用户安全,请您本人进行人脸识别操作",
(dialog, confirm) -> {
if (confirm) {
Bundle bundle = new Bundle();
bundle.putSerializable(OrderConstant.ORDERS,order);
mView.startActivity(OrderLivenessActivity.class, bundle);
checkCachedLicense(order);
}
});
customDialog.setTitle("人脸识别")
......@@ -136,4 +140,28 @@ public class OrderDoingPresenter extends orderDoingContract.Presenter {
mView.startActivity(OrderDetailsActivity.class, bundle);
MobclickAgent.onEvent(BaseApplication.getContext(), "check_order_detail");
}
public void checkCachedLicense(Order order) {
String uuid = ConUtil.getUUIDString(BaseApplication.getContext());
new Thread(() -> {
Manager manager = new Manager(BaseApplication.getContext());
LivenessLicenseManager licenseManager = new LivenessLicenseManager(BaseApplication.getContext());
manager.registerLicenseManager(licenseManager);
manager.takeLicenseFromNetwork(uuid);
if (licenseManager.checkCachedLicense() < 0) {
mHandler = new Handler(Looper.getMainLooper());
mHandler.post(() -> ToastUtils.showShortToast(getString(com.dayu.order.R.string.accredit_error)));
} else {
Bundle bundle = new Bundle();
bundle.putSerializable(OrderConstant.ORDERS, order);
mView.startActivity(OrderLivenessActivity.class, bundle);
}
}).start();
}
@Override
public void onDetached() {
super.onDetached();
mHandler = null;
}
}
......@@ -32,7 +32,6 @@ import com.megvii.idcardlib.util.IMediaPlayer;
import com.megvii.idcardlib.util.Screen;
import com.megvii.idcardlib.util.SensorUtil;
import com.megvii.idcardlib.view.CircleProgressBar;
import com.megvii.licensemanager.Manager;
import com.megvii.livenessdetection.DetectionConfig;
import com.megvii.livenessdetection.DetectionFrame;
import com.megvii.livenessdetection.Detector;
......@@ -41,7 +40,6 @@ import com.megvii.livenessdetection.Detector.DetectionListener;
import com.megvii.livenessdetection.Detector.DetectionType;
import com.megvii.livenessdetection.FaceQualityManager;
import com.megvii.livenessdetection.FaceQualityManager.FaceQualityErrorType;
import com.megvii.livenessdetection.LivenessLicenseManager;
import com.megvii.livenessdetection.bean.FaceIDDataStruct;
import com.megvii.livenessdetection.bean.FaceInfo;
......@@ -76,7 +74,6 @@ public class OrderLivenessActivity extends BaseActivity<OrderLivenessPresenter,
private boolean isHandleStart;// 是否开始检测
private FaceQualityManager mFaceQualityManager;
private SensorUtil sensorUtil;
private String uuid;
@Override
public int getLayoutId() {
......@@ -85,19 +82,8 @@ public class OrderLivenessActivity extends BaseActivity<OrderLivenessPresenter,
@Override
public void initView() {
uuid = ConUtil.getUUIDString(this);
new Thread(() -> {
Manager manager = new Manager(OrderLivenessActivity.this);
LivenessLicenseManager licenseManager = new LivenessLicenseManager(OrderLivenessActivity.this);
manager.registerLicenseManager(licenseManager);
manager.takeLicenseFromNetwork(uuid);
if (licenseManager.checkCachedLicense() < 0) {
runOnUiThread(() -> ToastUtils.showShortToast(getString(R.string.accredit_error)));
} else {
initData();
}
}).start();
init();
initData();
}
@Override
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment