|
@@ -30,6 +30,7 @@ import com.ethan.psbc.commons.IViewOnNoDoubleClickListener
|
|
|
import com.ethan.psbc.databinding.DialogValidateFaceBinding
|
|
|
import com.ethan.psbc.managers.impls.ImplFaceManager
|
|
|
import com.ethan.psbc.managers.impls.retrofit.INetworkMain
|
|
|
+import com.ethan.psbc.ui.widget.CircleProgressView
|
|
|
import com.lxj.xpopup.impl.FullScreenPopupView
|
|
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
|
|
import io.reactivex.rxjava3.observers.DisposableSingleObserver
|
|
@@ -82,8 +83,11 @@ class DialogValidateFace( mContext: Context) : FullScreenPopupView(mContext), IV
|
|
|
this.faceHandleRet=faceHandleRet
|
|
|
mBinding.mPreviewView.scaleType=PreviewView.ScaleType.FIT_CENTER
|
|
|
runCamera(this, mBinding.mPreviewView, faceHandleRet, context = context)
|
|
|
- //mBinding.mPreviewView.bringToFront()
|
|
|
+
|
|
|
mBinding.takePhoto.setOnClickListener(this)
|
|
|
+ var circle:View=CircleProgressView(context = context)
|
|
|
+ circle.id=R.id.faceCircle
|
|
|
+ mBinding.cameraLayoutc.addView(circle)
|
|
|
}
|
|
|
|
|
|
|
|
@@ -285,18 +289,29 @@ class DialogValidateFace( mContext: Context) : FullScreenPopupView(mContext), IV
|
|
|
|
|
|
if (faceDetRet >= FaceInterface.cw_errcode_t.CW_UNKNOWN_ERR) {
|
|
|
Log.d("demo", "检测到人脸异常:${faceDetRet}" )
|
|
|
+ var faceCircle= findViewById<CircleProgressView>(R.id.faceCircle)
|
|
|
+ faceCircle.setProgress(100)
|
|
|
+ faceCircle.setProgress(0)
|
|
|
}else if(faceDetRet<1){
|
|
|
Log.d("demo", "未检测到人脸:${faceDetRet}" )
|
|
|
context.lifecycleScope.launch {
|
|
|
Toast.makeText(context, "未检测到人脸:${faceDetRet}", Toast.LENGTH_SHORT).show()
|
|
|
}
|
|
|
-
|
|
|
+ var faceCircle= findViewById<CircleProgressView>(R.id.faceCircle)
|
|
|
+ faceCircle.setProgress(100)
|
|
|
+ faceCircle.setProgress(0)
|
|
|
}else if(faceDetRet>1){
|
|
|
Log.d("demo", "测到人脸数量大于1" )
|
|
|
context.lifecycleScope.launch {
|
|
|
Toast.makeText(context, "测到人脸数量大于1", Toast.LENGTH_SHORT).show()
|
|
|
}
|
|
|
+ var faceCircle= findViewById<CircleProgressView>(R.id.faceCircle)
|
|
|
+ faceCircle.setProgress(100)
|
|
|
+ faceCircle.setProgress(0)
|
|
|
}else{
|
|
|
+ var faceCircle= findViewById<CircleProgressView>(R.id.faceCircle)
|
|
|
+ faceCircle.setProgress(100)
|
|
|
+
|
|
|
Log.d("demo", "检测到人脸" )
|
|
|
val btFeature=ByteArray(iFeaLen)
|
|
|
FaceRecog.cwGetFaceFeature(handle,pFaceBuffer[0].alignedData,pFaceBuffer[0].alignedW,
|