左晓为主开发手持机充值管理机
zuojincheng
1 天以前 d773ab0295feba24ae4fc14f61e8aa310e40f4ba
generallibrary/src/main/java/com/dayu/general/tool/NfcWreatHelper.kt
@@ -119,26 +119,28 @@
        return false
    }
    /**
     * 写卡(异步)
     *
     * @param userCard 用户卡内容
     * @param callback 操作结果回调
     * @param callBack 操作结果和消息回调
     */
    fun writeUserDataAsync(userCard: UserCard, callback: (Boolean) -> Unit): Disposable {
    fun writeUserDataAsync(userCard: UserCard, callBack: NFCCallBack): Disposable {
        showLoading()
        val disposable = Observable.fromCallable {
            writeUserData(userCard)
            writeUserData(userCard, callBack)
        }
        .subscribeOn(Schedulers.io())
        .observeOn(AndroidSchedulers.mainThread())
        .subscribe({ result ->
            hideLoading()
            callback(result)
            // 结果已经在writeUserData中通过callBack回调了
        }, { error ->
            hideLoading()
            error.printStackTrace()
            callback(false)
            callBack.isSusses(false, "异步写卡异常: ${error.message}")
        })
        
        compositeDisposable.add(disposable)
@@ -161,6 +163,22 @@
    }
    /**
     * 写卡
     *
     * @param userCard 用户卡内容
     * @param callBack 回调接口
     */
    fun writeUserData(userCard: UserCard, callBack: NFCCallBack): Boolean {
        try {
            return adapter.writeUserData(userCard, 7, callBack)
        } catch (e: java.lang.Exception) {
            e.printStackTrace()
            callBack.isSusses(false, "写卡异常: ${e.message}")
        }
        return false
    }
    /**
     * 修改密码(异步)
     *
     * @param ps 密码列表