Commit 576b34ee by 罗翻

增加人脸识别

parent 905c2635
...@@ -13,6 +13,7 @@ import android.graphics.RectF; ...@@ -13,6 +13,7 @@ import android.graphics.RectF;
import android.media.ExifInterface; import android.media.ExifInterface;
import android.net.wifi.WifiInfo; import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager; import android.net.wifi.WifiManager;
import android.os.Environment;
import android.telephony.TelephonyManager; import android.telephony.TelephonyManager;
import android.util.Base64; import android.util.Base64;
import android.view.Gravity; import android.view.Gravity;
...@@ -88,22 +89,24 @@ public class ConUtil { ...@@ -88,22 +89,24 @@ public class ConUtil {
if (data == null) if (data == null)
return null; return null;
File mediaStorageDir = mContext.getExternalFilesDir(Constant.cacheImage); // File mediaStorageDir = mContext.getExternalFilesDir(Constant.cacheImage);
String jpgFileName = System.currentTimeMillis() + "" + new Random().nextInt(1000000) + "_" + key + ".jpg";
if (!mediaStorageDir.exists()) { File file = new File(Environment.getExternalStorageDirectory() + "/dayu/", jpgFileName);
if (!mediaStorageDir.mkdirs()) { // if (!mediaStorageDir.exists()) {
return null; // if (!mediaStorageDir.mkdirs()) {
} // return null;
} // }
// }
BufferedOutputStream bos = null; BufferedOutputStream bos = null;
FileOutputStream fos = null; FileOutputStream fos = null;
try { try {
String jpgFileName = System.currentTimeMillis() + "" + new Random().nextInt(1000000) + "_" + key + ".jpg";
fos = new FileOutputStream(mediaStorageDir + "/" + jpgFileName);
fos = new FileOutputStream(file.getAbsolutePath());
bos = new BufferedOutputStream(fos); bos = new BufferedOutputStream(fos);
bos.write(data); bos.write(data);
return mediaStorageDir; return file;
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} finally { } finally {
......
...@@ -31,11 +31,11 @@ import com.dayu.common.Constants; ...@@ -31,11 +31,11 @@ import com.dayu.common.Constants;
import com.dayu.event.DownloadBean; import com.dayu.event.DownloadBean;
import com.dayu.location.base.LocationUtils; import com.dayu.location.base.LocationUtils;
import com.dayu.message.ui.fragment.HomeMessageFragment; import com.dayu.message.ui.fragment.HomeMessageFragment;
import com.dayu.order.ui.activity.ReceivingActivity;
import com.dayu.order.ui.fragment.HomeOrderFragment; import com.dayu.order.ui.fragment.HomeOrderFragment;
import com.dayu.provider.event.RefreshReceivingNum; import com.dayu.provider.event.RefreshReceivingNum;
import com.dayu.provider.event.SwtichFragment; import com.dayu.provider.event.SwtichFragment;
import com.dayu.provider.router.RouterPath; import com.dayu.provider.router.RouterPath;
import com.dayu.usercenter.ui.activity.IdentityCertificationActivity;
import com.dayu.usercenter.ui.fragment.HomePersonFragment; import com.dayu.usercenter.ui.fragment.HomePersonFragment;
import com.dayu.utils.badgeNumberManger.BadgeNumberManager; import com.dayu.utils.badgeNumberManger.BadgeNumberManager;
import com.dayu.widgets.CustomDialog; import com.dayu.widgets.CustomDialog;
...@@ -259,7 +259,7 @@ public class MainActivity extends BaseActivity<MainPresenter, ActivityMainBindin ...@@ -259,7 +259,7 @@ public class MainActivity extends BaseActivity<MainPresenter, ActivityMainBindin
@Override @Override
public void dumpReceActivity() { public void dumpReceActivity() {
Intent intent = new Intent(mActivity, IdentityCertificationActivity.class); Intent intent = new Intent(mActivity, ReceivingActivity.class);
startActivity(intent); startActivity(intent);
overridePendingTransition(R.anim.slide_bottom_in, 0); overridePendingTransition(R.anim.slide_bottom_in, 0);
} }
......
...@@ -78,6 +78,15 @@ public class ServerException extends Exception { ...@@ -78,6 +78,15 @@ public class ServerException extends Exception {
case "USER0051": case "USER0051":
message = BaseApplication.getContext().getString(R.string.not_audite_aviliable); message = BaseApplication.getContext().getString(R.string.not_audite_aviliable);
break; break;
case "DETECT_ERROR00003":
message = BaseApplication.getContext().getString(R.string.error_detect_face);
break;
case "DETECT_ERROR00004":
message = BaseApplication.getContext().getString(R.string.error_detect_server);
break;
case "DETECT_ERROR00005":
message = BaseApplication.getContext().getString(R.string.error_cetect_identity);
break;
/** 账户相关*/ /** 账户相关*/
case "SETTLEMENT0015": case "SETTLEMENT0015":
message = Constants.NOT_SHOW; message = Constants.NOT_SHOW;
......
...@@ -30,6 +30,15 @@ public class UserInfo { ...@@ -30,6 +30,15 @@ public class UserInfo {
private String token; private String token;
private String accountName; private String accountName;
private int status; private int status;
private int detectStatus;
public int getDetectStatus() {
return detectStatus;
}
public void setDetectStatus(int detectStatus) {
this.detectStatus = detectStatus;
}
public String getHxAccount() { public String getHxAccount() {
return hxAccount; return hxAccount;
......
...@@ -64,7 +64,7 @@ public class UserManager { ...@@ -64,7 +64,7 @@ public class UserManager {
if (userInfo != null) { if (userInfo != null) {
//有数据 //有数据
if (!TextUtils.isEmpty(userInfo.getAccountId()) && !TextUtils.isEmpty(userInfo.getSiteId()) if (!TextUtils.isEmpty(userInfo.getAccountId()) && !TextUtils.isEmpty(userInfo.getSiteId())
&& !TextUtils.isEmpty(userInfo.getAccountName()) && userInfo.getStatus() == 1) { && !TextUtils.isEmpty(userInfo.getAccountName()) && userInfo.getDetectStatus() == 1) {
return true; return true;
} else { } else {
return false; return false;
......
...@@ -449,6 +449,10 @@ ...@@ -449,6 +449,10 @@
<string name="not_audite_aviliable">该工程师不处于审核拒绝状态</string> <string name="not_audite_aviliable">该工程师不处于审核拒绝状态</string>
<string name="error_verison_code">解析版本号失败</string> <string name="error_verison_code">解析版本号失败</string>
<string name="error_detect_face">请采集您本人的面孔</string>
<string name="error_detect_server">系统异常,请稍后重试</string>
<string name="error_cetect_identity">请上传身份证正面 </string>
<string name="global0001">未知错误GLOBAL0001</string> <string name="global0001">未知错误GLOBAL0001</string>
<string name="global0002">未知错误GLOBAL0002</string> <string name="global0002">未知错误GLOBAL0002</string>
<string name="global0003">未知错误GLOBAL0003</string> <string name="global0003">未知错误GLOBAL0003</string>
......
...@@ -8,6 +8,7 @@ package com.dayu.usercenter.common; ...@@ -8,6 +8,7 @@ package com.dayu.usercenter.common;
public class UserConstant { public class UserConstant {
public static final String FRONT_URL = "front_url"; public static final String FRONT_URL = "front_url";
public static final String BACK_URL = "back_url"; public static final String BACK_URL = "back_url";
public static final String DETECT_STATE = "detect_state";
/** /**
* 登录. * 登录.
...@@ -70,6 +71,6 @@ public class UserConstant { ...@@ -70,6 +71,6 @@ public class UserConstant {
public final static String IDENTITY_OCR = "/api-detect/" + "detect/cardOcr"; public final static String IDENTITY_OCR = "/api-detect/" + "detect/cardOcr";
public final static String FACE_OCR = "/api-detect/" + "detect/megLiveVerify"; public final static String FACE_OCR = "/api-user/" + "/accountExt/engineerMegLiveVerify";
} }
...@@ -27,7 +27,7 @@ public class CertificaitonPresenter extends CertificaitonContract.Presenter { ...@@ -27,7 +27,7 @@ public class CertificaitonPresenter extends CertificaitonContract.Presenter {
@Override @Override
public void commitePhoto() { public void commitePhoto() {
// mView.startActivity(FaceCertificationActivity.class); mView.showDialog();
BaseApiFactory.uploadPhoto(packPhoto(mView.getFile()), "nowatermark").subscribe(baseObserver(list -> { BaseApiFactory.uploadPhoto(packPhoto(mView.getFile()), "nowatermark").subscribe(baseObserver(list -> {
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putString(UserConstant.FRONT_URL, list.get(0)); bundle.putString(UserConstant.FRONT_URL, list.get(0));
......
...@@ -3,10 +3,11 @@ package com.dayu.usercenter.presenter.facecertification; ...@@ -3,10 +3,11 @@ package com.dayu.usercenter.presenter.facecertification;
import android.os.Bundle; import android.os.Bundle;
import com.dayu.base.api.BaseApiFactory; import com.dayu.base.api.BaseApiFactory;
import com.dayu.event.UserInfo;
import com.dayu.usercenter.api.UserApiFactory; import com.dayu.usercenter.api.UserApiFactory;
import com.dayu.usercenter.common.UserConstant; import com.dayu.usercenter.common.UserConstant;
import com.dayu.usercenter.ui.activity.CertificationResultActivity; import com.dayu.usercenter.ui.activity.CertificationResultActivity;
import com.dayu.utils.ToastUtils; import com.dayu.utils.UserManager;
import org.json.JSONObject; import org.json.JSONObject;
...@@ -26,9 +27,11 @@ public class FaceCertificaitonPresenter extends FaceCertificaitonContract.Presen ...@@ -26,9 +27,11 @@ public class FaceCertificaitonPresenter extends FaceCertificaitonContract.Presen
private String mDelta; private String mDelta;
private String mFrontCardUrl; private String mFrontCardUrl;
private String mBackCardUrl; private String mBackCardUrl;
private int accountId;
@Override @Override
public void onAttached() { public void onAttached() {
accountId = Integer.parseInt(UserManager.getInstance().getUser().getAccountId());
Bundle bundle = mView.getBundle(); Bundle bundle = mView.getBundle();
mFrontCardUrl = bundle.getString(UserConstant.FRONT_URL); mFrontCardUrl = bundle.getString(UserConstant.FRONT_URL);
mBackCardUrl = bundle.getString(UserConstant.BACK_URL); mBackCardUrl = bundle.getString(UserConstant.BACK_URL);
...@@ -37,7 +40,7 @@ public class FaceCertificaitonPresenter extends FaceCertificaitonContract.Presen ...@@ -37,7 +40,7 @@ public class FaceCertificaitonPresenter extends FaceCertificaitonContract.Presen
@Override @Override
public void commitePhoto(List<File> list, String delta) { public void commitePhoto(List<File> list, String delta) {
mDelta = delta; mDelta = delta;
BaseApiFactory.uploadPhoto(packPhoto(list),"nowatermark").subscribe(baseObserver(this::verifyIdentity)); BaseApiFactory.uploadPhoto(packPhoto(list), "nowatermark").subscribe(baseObserver(this::verifyIdentity));
} }
private MultipartBody.Part[] packPhoto(List<File> files) { private MultipartBody.Part[] packPhoto(List<File> files) {
...@@ -55,8 +58,9 @@ public class FaceCertificaitonPresenter extends FaceCertificaitonContract.Presen ...@@ -55,8 +58,9 @@ public class FaceCertificaitonPresenter extends FaceCertificaitonContract.Presen
@Override @Override
public void verifyIdentity(List<String> list) { public void verifyIdentity(List<String> list) {
HashMap<String, Object> params = new HashMap<>(); HashMap<String, Object> params = new HashMap<>();
params.put("cardBackUrl", mFrontCardUrl); params.put("accountId", accountId);
params.put("cardFrontUrl", mBackCardUrl); params.put("cardFrontUrl", mFrontCardUrl);
params.put("cardBackUrl", mBackCardUrl);
params.put("checkDelta", 0); params.put("checkDelta", 0);
params.put("comparisonType", 1); params.put("comparisonType", 1);
params.put("delta", mDelta); params.put("delta", mDelta);
...@@ -68,13 +72,27 @@ public class FaceCertificaitonPresenter extends FaceCertificaitonContract.Presen ...@@ -68,13 +72,27 @@ public class FaceCertificaitonPresenter extends FaceCertificaitonContract.Presen
params.put("multiOrientedDetection", 1); params.put("multiOrientedDetection", 1);
JSONObject jsonObject = new JSONObject(params); JSONObject jsonObject = new JSONObject(params);
RequestBody body = RequestBody.create(MediaType.parse("application/json"), jsonObject.toString()); RequestBody body = RequestBody.create(MediaType.parse("application/json"), jsonObject.toString());
mView.showDialog();
Bundle bundle = new Bundle();
UserApiFactory.verifyMegLive(body).subscribe(baseObserver(aBoolean -> { UserApiFactory.verifyMegLive(body).subscribe(baseObserver(aBoolean -> {
if (aBoolean) { if (aBoolean) {
ToastUtils.showShortToast("身份证上传成功!"); UserInfo info = UserManager.getInstance().getUser();
mView.startActivity(CertificationResultActivity.class); info.setDetectStatus(1);
UserManager.getInstance().saveUser(info);
bundle.putString(UserConstant.DETECT_STATE, "认证成功");
mView.startActivity(CertificationResultActivity.class, bundle);
}
}, responeThrowable -> {
if ("DETECT_ERROR00003".equals(responeThrowable.subCode)) {
bundle.putString(UserConstant.DETECT_STATE, "请采集您本人的面孔");
} else if ("DETECT_ERROR00003".equals(responeThrowable.subCode)) {
bundle.putString(UserConstant.DETECT_STATE, "系统异常,请稍后重试");
} else if ("DETECT_ERROR00003".equals(responeThrowable.subCode)) {
bundle.putString(UserConstant.DETECT_STATE, "请上传身份证正面");
} else { } else {
ToastUtils.showShortToast("您传的身份证不合格,请重新上传!"); bundle.putString(UserConstant.DETECT_STATE, "您的活检认证暂未通过");
} }
mView.startActivity(CertificationResultActivity.class, bundle);
})); }));
} }
} }
...@@ -10,9 +10,8 @@ import com.dayu.provider.router.RouterPath; ...@@ -10,9 +10,8 @@ import com.dayu.provider.router.RouterPath;
import com.dayu.usercenter.R; import com.dayu.usercenter.R;
import com.dayu.usercenter.api.UserApiFactory; import com.dayu.usercenter.api.UserApiFactory;
import com.dayu.usercenter.ui.activity.AgreementActivity; import com.dayu.usercenter.ui.activity.AgreementActivity;
import com.dayu.usercenter.ui.activity.PersonInfoActivity; import com.dayu.usercenter.ui.activity.IdentityCertificationActivity;
import com.dayu.utils.LogUtils; import com.dayu.utils.LogUtils;
import com.dayu.utils.ToastUtils;
import com.dayu.utils.UserManager; import com.dayu.utils.UserManager;
import com.dayu.utils.UtilsUserAccountMatcher; import com.dayu.utils.UtilsUserAccountMatcher;
import com.hyphenate.EMCallBack; import com.hyphenate.EMCallBack;
...@@ -69,13 +68,15 @@ public class LoginPresenter extends LoginContract.Presenter { ...@@ -69,13 +68,15 @@ public class LoginPresenter extends LoginContract.Presenter {
} }
mView.showDialog(); mView.showDialog();
UserApiFactory.login(userName.get(), password.get()).subscribe(baseObserver(userInfo -> { UserApiFactory.login(userName.get(), password.get()).subscribe(baseObserver(userInfo -> {
if (userInfo.getStatus() == 1) { if (userInfo.getDetectStatus() == 1) {
loginHx(userInfo.getHxAccount(), userInfo.getHxPwd()); loginHx(userInfo.getHxAccount(), userInfo.getHxPwd());
dumpAndSave(userInfo); dumpAndSave(userInfo);
} else if (userInfo.getStatus() == 2) { }
ToastUtils.showShortToast(R.string.engineer_identity_auditing); // else if (userInfo.getDetectStatus() == 2) {
UserManager.getInstance().saveUser(userInfo); // ToastUtils.showShortToast(R.string.engineer_identity_auditing);
} else if (userInfo.getStatus() == 3) { // UserManager.getInstance().saveUser(userInfo);
// }
else if (userInfo.getDetectStatus() == 2 || userInfo.getDetectStatus() == 3) {
showLoginDialog(); showLoginDialog();
UserManager.getInstance().saveUser(userInfo); UserManager.getInstance().saveUser(userInfo);
} }
...@@ -107,7 +108,7 @@ public class LoginPresenter extends LoginContract.Presenter { ...@@ -107,7 +108,7 @@ public class LoginPresenter extends LoginContract.Presenter {
private void showLoginDialog() { private void showLoginDialog() {
mView.showLoginDialog((dialog, confirm) -> { mView.showLoginDialog((dialog, confirm) -> {
if (confirm) { if (confirm) {
mView.startActivity(PersonInfoActivity.class); mView.startActivity(IdentityCertificationActivity.class);
} }
}); });
} }
......
package com.dayu.usercenter.ui.activity; package com.dayu.usercenter.ui.activity;
import android.content.Intent;
import android.os.Bundle;
import com.alibaba.android.arouter.launcher.ARouter;
import com.dayu.base.ui.activity.DataBindingActivity; import com.dayu.base.ui.activity.DataBindingActivity;
import com.dayu.common.Constants;
import com.dayu.provider.router.RouterPath;
import com.dayu.usercenter.R; import com.dayu.usercenter.R;
import com.dayu.usercenter.common.UserConstant;
import com.dayu.usercenter.databinding.ActivityCertificationResultBinding; import com.dayu.usercenter.databinding.ActivityCertificationResultBinding;
import com.dayu.utils.AppManager;
/** /**
* Created by luofan * Created by luofan
...@@ -17,6 +25,28 @@ public class CertificationResultActivity extends DataBindingActivity<ActivityCer ...@@ -17,6 +25,28 @@ public class CertificationResultActivity extends DataBindingActivity<ActivityCer
@Override @Override
public void initView() { public void initView() {
mBind.tvTitle.setText("实名认证");
Bundle bundle = getIntent().getBundleExtra(Constants.BUNDLE);
String state = bundle.getString(UserConstant.DETECT_STATE);
if (!"认证成功".equals(state)) {
mBind.ivIcon.setImageResource(R.drawable.icon_certification_failure);
mBind.tvResult.setText("认证失败!");
mBind.tvNotice.setText(state);
mBind.tvCommite.setText("重新认证");
mBind.tvCommite.setOnClickListener(v -> {
if (state.contains("活体检测")) {
finish();
} else {
Intent intent = new Intent(mActivity, IdentityCertificationActivity.class);
startActivity(intent);
finish();
AppManager.getInstance().finishActivity(FaceCertificationActivity.class);
}
});
} else {
mBind.tvCommite.setOnClickListener(v ->
ARouter.getInstance().build(RouterPath.PATH_MAIN).navigation());
}
} }
} }
...@@ -3,12 +3,14 @@ package com.dayu.usercenter.ui.activity; ...@@ -3,12 +3,14 @@ package com.dayu.usercenter.ui.activity;
import android.Manifest; import android.Manifest;
import android.content.Intent; import android.content.Intent;
import android.content.pm.PackageManager; import android.content.pm.PackageManager;
import android.graphics.BitmapFactory; import android.os.Bundle;
import android.support.v4.app.ActivityCompat; import android.support.v4.app.ActivityCompat;
import android.support.v4.content.ContextCompat; import android.support.v4.content.ContextCompat;
import com.dayu.base.ui.activity.BaseActivity; import com.dayu.base.ui.activity.BaseActivity;
import com.dayu.common.Constants;
import com.dayu.usercenter.R; import com.dayu.usercenter.R;
import com.dayu.usercenter.common.UserConstant;
import com.dayu.usercenter.databinding.ActivityFaceCertificationBinding; import com.dayu.usercenter.databinding.ActivityFaceCertificationBinding;
import com.dayu.usercenter.presenter.facecertification.FaceCertificaitonContract; import com.dayu.usercenter.presenter.facecertification.FaceCertificaitonContract;
import com.dayu.usercenter.presenter.facecertification.FaceCertificaitonPresenter; import com.dayu.usercenter.presenter.facecertification.FaceCertificaitonPresenter;
...@@ -97,13 +99,13 @@ public class FaceCertificationActivity extends BaseActivity<FaceCertificaitonPre ...@@ -97,13 +99,13 @@ public class FaceCertificationActivity extends BaseActivity<FaceCertificaitonPre
super.onActivityResult(requestCode, resultCode, data); super.onActivityResult(requestCode, resultCode, data);
if (requestCode == PAGE_INTO_LIVENESS && resultCode == RESULT_OK) { if (requestCode == PAGE_INTO_LIVENESS && resultCode == RESULT_OK) {
boolean isSuccess = false; boolean isSuccess = false;
int resID = 0;
String delta = data.getStringExtra("delta"); String delta = data.getStringExtra("delta");
int code = data.getIntExtra("resultcode", 0); int code = data.getIntExtra("resultcode", 0);
String str = data.getStringExtra("result"); String str = data.getStringExtra("result");
try { try {
JSONObject result = new JSONObject(str); JSONObject result = new JSONObject(str);
int resID = result.getInt("resultcode"); resID = result.getInt("resultcode");
checkID(resID);
isSuccess = result.getString("result").equals( isSuccess = result.getString("result").equals(
getResources().getString(R.string.verify_success)); getResources().getString(R.string.verify_success));
} catch (JSONException e) { } catch (JSONException e) {
...@@ -117,30 +119,30 @@ public class FaceCertificationActivity extends BaseActivity<FaceCertificaitonPre ...@@ -117,30 +119,30 @@ public class FaceCertificationActivity extends BaseActivity<FaceCertificaitonPre
byte[] image_action1 = images.get("image_action1"); byte[] image_action1 = images.get("image_action1");
byte[] image_action2 = images.get("image_action2"); byte[] image_action2 = images.get("image_action2");
byte[] image_action3 = images.get("image_action3"); byte[] image_action3 = images.get("image_action3");
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 2;
list.add(ConUtil.saveJPG(mActivity, image_best, "image_best")); list.add(ConUtil.saveJPG(mActivity, image_best, "image_best"));
list.add(ConUtil.saveJPG(mActivity, image_env, "image_env")); list.add(ConUtil.saveJPG(mActivity, image_env, "image_env"));
list.add(ConUtil.saveJPG(mActivity, image_action1, "image_action1")); list.add(ConUtil.saveJPG(mActivity, image_action1, "image_action1"));
list.add(ConUtil.saveJPG(mActivity, image_action2, "image_action2")); list.add(ConUtil.saveJPG(mActivity, image_action2, "image_action2"));
list.add(ConUtil.saveJPG(mActivity, image_action3, "image_action3")); list.add(ConUtil.saveJPG(mActivity, image_action3, "image_action3"));
// list.add(GlideImageLoader.compressImage(BitmapFactory.decodeByteArray(image_best, 0, image_best.length, options), "best"));
// list.add(GlideImageLoader.compressImage(BitmapFactory.decodeByteArray(image_env, 0, image_best.length, options), "env"));
// list.add(GlideImageLoader.compressImage(BitmapFactory.decodeByteArray(image_action1, 0, image_best.length, options), "action1"));
// list.add(GlideImageLoader.compressImage(BitmapFactory.decodeByteArray(image_action2, 0, image_best.length, options), "action2"));
// list.add(GlideImageLoader.compressImage(BitmapFactory.decodeByteArray(image_action3, 0, image_best.length, options), "action3"));
mPresenter.commitePhoto(list, delta); mPresenter.commitePhoto(list, delta);
} else {
checkID(resID);
} }
} }
} }
private void checkID(int resID) { private void checkID(int resID) {
if (resID == R.string.verify_success) { Bundle bundle = new Bundle();
} else if (resID == R.string.liveness_detection_failed_not_video) { if (resID == R.string.liveness_detection_failed_not_video) {
bundle.putString(UserConstant.DETECT_STATE, getString(resID));
} else if (resID == R.string.liveness_detection_failed_timeout) { } else if (resID == R.string.liveness_detection_failed_timeout) {
} else if (resID == R.string.liveness_detection_failed) { bundle.putString(UserConstant.DETECT_STATE, getString(resID));
} else { } else {
bundle.putString(UserConstant.DETECT_STATE, getString(R.string.liveness_detection_failed));
} }
Intent intent = new Intent(mActivity, CertificationResultActivity.class);
intent.putExtra(Constants.BUNDLE, bundle);
mActivity.startActivity(intent);
} }
@Override @Override
......
...@@ -47,6 +47,7 @@ ...@@ -47,6 +47,7 @@
</LinearLayout> </LinearLayout>
<ImageView <ImageView
android:id="@+id/iv_icon"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
...@@ -54,6 +55,7 @@ ...@@ -54,6 +55,7 @@
android:src="@drawable/icon_certificaiton_succeed" /> android:src="@drawable/icon_certificaiton_succeed" />
<TextView <TextView
android:id="@+id/tv_result"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center" android:layout_gravity="center"
...@@ -64,6 +66,7 @@ ...@@ -64,6 +66,7 @@
android:textStyle="bold" /> android:textStyle="bold" />
<TextView <TextView
android:id="@+id/tv_notice"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center" android:layout_gravity="center"
...@@ -73,12 +76,15 @@ ...@@ -73,12 +76,15 @@
android:textSize="@dimen/sp_14" /> android:textSize="@dimen/sp_14" />
<TextView <TextView
android:id="@+id/tv_commite"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center" android:layout_gravity="center"
android:layout_marginTop="90dp" android:layout_marginTop="90dp"
android:background="@drawable/icon_next_button" android:background="@drawable/icon_next_button"
android:gravity="center" android:gravity="center"
android:layout_marginRight="@dimen/dp_15"
android:layout_marginLeft="@dimen/dp_15"
android:text="确定" android:text="确定"
android:textColor="@color/white" android:textColor="@color/white"
android:textSize="@dimen/sp_16" /> android:textSize="@dimen/sp_16" />
......
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