|
@@ -131,93 +131,7 @@ class WebViewCallFunctions(val activity: AppCompatActivity, val webView: WebView
|
|
|
activity.startActivity(intent)
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
- /**
|
|
|
- * Acting Button Click Event
|
|
|
- * Native : Xml Data Signing to Javascript Callback
|
|
|
- * param -- > type, functionType, value
|
|
|
- * param[value] -- > userId, xmlData, callbackFunction
|
|
|
- */
|
|
|
- fun certDataToNative() {
|
|
|
- val param = param ?: return
|
|
|
- val functionName = param["callbackFn"].toString()
|
|
|
- val json = JSONObject()
|
|
|
- var result: String? = null
|
|
|
-
|
|
|
- var userId: String = param["userId"].toString() //
|
|
|
- var xmlData: String = param["xmlData"].toString() // XML 데이터가 여러개인 경우 구분자를 통한 하나의 스트링으로 받아서 split
|
|
|
- var xmlArray = xmlData.split("|%POC%|")
|
|
|
|
|
|
-// var certFlag = SignWrapper.getInstance().isCertificate("96070") // 인증서를 가지고 와서 인증된 데이터인지 확인
|
|
|
- var certFlag = SignWrapper.getInstance().isCertificate(userId) // 실제 사용하는 변수
|
|
|
-
|
|
|
- // 액팅버튼 클릭 -- > certFlag가 false면 인증비밀번호를 입력받기 위해 alert에 EditText를 추가
|
|
|
- val passwordEdit: EditText = EditText(activity)
|
|
|
- passwordEdit.setRawInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD or InputType.TYPE_CLASS_TEXT)
|
|
|
- passwordEdit.transformationMethod = PasswordTransformationMethod.getInstance()
|
|
|
- Util.setCursorColor(passwordEdit, R.color.black_overlay)
|
|
|
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
|
|
|
- passwordEdit.setTextColor(activity.getColor(R.color.black))
|
|
|
- }
|
|
|
- val imm = activity.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
|
|
|
-
|
|
|
- /**
|
|
|
- * 인증비밀번호 입력 및 인증
|
|
|
- */
|
|
|
- val thread = Thread(Runnable {
|
|
|
- Handler(Looper.getMainLooper()).post {
|
|
|
- if (!certFlag) {
|
|
|
- var okListener: DialogInterface.OnClickListener = DialogInterface.OnClickListener { dialog, which ->
|
|
|
- val certPw: String = passwordEdit.text.toString()
|
|
|
- try {
|
|
|
- if (SignWrapper.getInstance().certificate(activity, userId, certPw)) {
|
|
|
- for ((index, value) in xmlArray.withIndex()) {
|
|
|
- try {
|
|
|
- result = SignWrapper.getInstance().signData(userId, value)
|
|
|
- json.put("success", "0000")
|
|
|
- json.put("index", index.toString())
|
|
|
- } catch (e: Exception) {
|
|
|
- e.printStackTrace()
|
|
|
- Util.getOKDialog(activity, activity.getString(R.string.emptyCertPw), activity.getString(R.string.certAuthFail), null).show()
|
|
|
- }
|
|
|
- val callback = "javascript:$functionName('$json', '$result', '$value')"
|
|
|
- Util.LOG(webView.javaClass, "result -- > $result")
|
|
|
- webView.post(Runnable { webView.loadUrl(callback) })
|
|
|
- }
|
|
|
- } else {
|
|
|
- Util.getOKDialog(activity, activity.getString(R.string.emptyCertPw), activity.getString(R.string.certAuthFail), null).show()
|
|
|
- }
|
|
|
- } catch (e: Exception) {
|
|
|
- e.printStackTrace()
|
|
|
- Util.getOKDialog(activity, activity.getString(R.string.emptyCertPw), activity.getString(R.string.certAuthFail), null).show()
|
|
|
- }
|
|
|
- }
|
|
|
- var dismissListener: DialogInterface.OnClickListener = DialogInterface.OnClickListener { dialog, which ->
|
|
|
- imm.hideSoftInputFromWindow(passwordEdit.windowToken, 0)
|
|
|
- }
|
|
|
- val dialog: AlertDialog = Util.getPasswordInputDialog(activity, activity.getString(R.string.emptyCertPw), activity.getString(R.string.certAuthFail), okListener, dismissListener)
|
|
|
- dialog.setView(passwordEdit)
|
|
|
- dialog.show()
|
|
|
- } else {
|
|
|
- for ((index, value) in xmlArray.withIndex()) {
|
|
|
- try {
|
|
|
- result = SignWrapper.getInstance().signData(userId, value)
|
|
|
- json.put("success", "0000")
|
|
|
- json.put("index", index.toString())
|
|
|
- } catch (e: Exception) {
|
|
|
- e.printStackTrace()
|
|
|
- Util.getOKDialog(activity, activity.getString(R.string.emptyCertPw), activity.getString(R.string.certAuthFail), null).show()
|
|
|
- }
|
|
|
- val callback = "javascript:$functionName('$json', '$result', '$value')"
|
|
|
- Util.LOG(webView.javaClass, "result -- > $result")
|
|
|
- webView.post(Runnable { webView.loadUrl(callback) })
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- })
|
|
|
- thread.start()
|
|
|
- }
|
|
|
-
|
|
|
fun lockscreen() {
|
|
|
if (USE_LOCK_SCREEN == false) {
|
|
|
return
|