小程序二维码能力说明
功能说明
调起宿主扫码界面,扫码成功后返回对应的结果,具体可参考 智能小程序开发文档-扫码
原理
小程序调用 swan.scanCode
API时,跳转到二维码扫描界面,二维码扫描结果返回给调起的小程序
实现
接口:ISwanAppScanCode
1 2 3 4 5 6 7 8 9 10 11
| public interface ISwanAppScanCode {
/** * 调起客户端扫码界面,扫码成功后返回对应的结果 * 对应swan.scanCode() 的实现,详情可参考:https://smartprogram.baidu.com/docs/develop/api/device_scan/#scanCode/ * * @param context 上下文 * @param callback 扫码结果回调 */ void scanCode(Context context, IScanResultCallback callback); }
|
IScanResultCallback说明
回调定义:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| public interface IScanResultCallback {
/** * 扫码成功 * * @param result 扫码的结果 * @param scanType 扫码的类型 * 二维码(QR_CODE、DATA_MATRIX、PDF_417等类型) * 一维码(EAN、UPC、CODE_39、CODE_128等类型) * @param charSet 扫码的字符集,示例:GBK */ void onSuccess(String result, String scanType, String charSet);
/** * 扫码失败 */ void onFailed(); }
|
宿主需要在 ISwanAppScanCode#scanCode(Context, IScanResultCallback)
的实现中,跳转到扫码页面,扫描成功后,通过 IScanResultCallback
对应方法回传结果
该能力指小程序内部的扫码能力,不是接入app的扫码能力