Giter Site home page Giter Site logo

android-scan's Introduction

本 demo 为 扫一扫 单组件 demo,clone 后直接运行工程即可。

支持基线与接入方式

支持 inside(不再维护) 和 aar 两种接入方式,支持基线:

  • 10.1.60,支持 inside 方式(10.1.60 分支)
  • 10.1.68,支持 inside 和 aar 方式(10.1.68 分支)
  • 10.2.3,支持 aar 方式(master 分支)

android-scan's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

android-scan's Issues

编译报错

编译时报错 duplicate entry:res/layout/activity_scan.xml found! 是怎么回事

Cause: duplicate entry:res/drawable-hdpi-v4/scan_ray.png found!

环境工具
Android Studio 3.6.3
Build #AI-192.7142.36.36.6392135, built on April 14, 2020
Runtime version: 1.8.0_212-release-1586-b04 amd64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Windows 10 10.0
GC: ParNew, ConcurrentMarkSweep
Memory: 1237M
Cores: 12
Registry: ide.new.welcome.screen.force=true
Non-Bundled Plugins: org.jetbrains.kotlin, com.alipay.android.plugin.mpaas.boost

报错
Cause: duplicate entry:res/drawable-hdpi-v4/scan_ray.png found!

reportNoInitialization 扫码后挂掉了,提示need invoke bind before use

java.lang.IllegalMonitorStateException: need invoke bind before use
at com.alipay.mobile.common.logging.api.LoggerFactory.a(LoggerFactory.java:285)
at com.alipay.mobile.common.logging.api.LoggerFactory.access$800(LoggerFactory.java:50)
at com.alipay.mobile.common.logging.api.LoggerFactory$NullTraceLogger.warn(LoggerFactory.java:493)
at com.alipay.mobile.bqcscanservice.Logger$1.run(Logger.java:155)
at android.os.Handler.handleCallback(Handler.java:819)
at android.os.Handler.dispatchMessage(Handler.java:104)
at android.os.Looper.loop(Looper.java:210)
at android.os.HandlerThread.run(HandlerThread.java:61)

按照demo示例,可能会出现打开摄像头失败的情况

2021-03-23 11:22:52.211 26282-14610/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] setup()
2021-03-23 11:22:52.212 26282-14610/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] setDisplay():surfaceCallback is null:false
2021-03-23 11:22:52.212 26282-14610/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] startPreviewing,cameraFacingType= 0
2021-03-23 11:22:52.212 26282-14611/apppackage D/[Scan]MPaasScanServiceImpl: [Scan-Recognized] regScanEngine()
2021-03-23 11:22:52.213 26282-14611/apppackage D/[Scan]MPaasScanServiceImpl: [Scan-Recognized] setScanType(MA, null, barCode|qrCode|dmCode|pdf417Code)
2021-03-23 11:22:52.213 26282-14611/apppackage D/[Scan]MPaasScanServiceImpl: [Scan-Recognized] setScanEnable(enable=true, cameraManager=com.alipay.camera.CameraManager@9a5b30d, scanController=com.alipay.mobile.bqcscanservice.impl.BQCScanController@12962c2
2021-03-23 11:22:52.233 26282-14610/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] resetCurCameraParameters
2021-03-23 11:22:52.234 26282-26282/apppackage D/[Scan]MPaasScanServiceImpl: [main] BQCSurfaceCallback:onSurfaceTextureAvailable(): surface: android.graphics.SurfaceTexture@c90c21f, width: 1080, height: 2408
2021-03-23 11:22:52.236 26282-14610/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] setPreviewCallback()
2021-03-23 11:22:52.236 26282-14610/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] requestPreviewFrameWithBuffer
2021-03-23 11:22:52.236 26282-14610/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] setPreviewParameters: surfaceTexture is : android.graphics.SurfaceTexture@c90c21f
2021-03-23 11:22:52.237 26282-14610/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] onSurfaceAvailable:surfaceTexture:false, is surfaceAvailable android.graphics.SurfaceTexture@c90c21f, surfaceAlreadySet:false
2021-03-23 11:22:52.237 26282-14610/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] Start to set preview surface
2021-03-23 11:22:52.419 26282-14610/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] onSurfaceAvailable:surfaceTexture:false, is surfaceAvailable android.graphics.SurfaceTexture@c90c21f, surfaceAlreadySet:true
2021-03-23 11:22:53.199 26282-13729/apppackage D/[Scan]MPaasScanServiceImpl: [Thread-72] The Postcode is 0, the bqcCode is 1616469752989, the statisticCamera is 0
2021-03-23 11:22:53.451 26282-14611/apppackage D/[Scan]MPaasScanServiceImpl: [Scan-Recognized] setScanEnable(enable=false, cameraManager=com.alipay.camera.CameraManager@9a5b30d, scanController=com.alipay.mobile.bqcscanservice.impl.BQCScanController@12962c2
2021-03-23 11:22:53.485 26282-14610/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] stopPreview(), surfaceTexture = null; textureView=null
2021-03-23 11:22:53.749 26282-14610/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] The Camera FrameRate: mFrameNum = 27, duration = 1226, frame(ms)=45
2021-03-23 11:22:53.749 26282-14610/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] cleanUp: surfaceTexture = null, textureView = null
2021-03-23 11:22:53.784 26282-26282/apppackage D/[Scan]MPaasScanServiceImpl: [main] onSurfaceTextureDestroyed: android.graphics.SurfaceTexture@c90c21f
2021-03-23 11:22:55.568 26282-14781/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] setup()
2021-03-23 11:22:55.569 26282-14781/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] setDisplay():surfaceCallback is null:false
2021-03-23 11:22:55.569 26282-14782/apppackage D/[Scan]MPaasScanServiceImpl: [Scan-Recognized] regScanEngine()
2021-03-23 11:22:55.569 26282-14782/apppackage D/[Scan]MPaasScanServiceImpl: [Scan-Recognized] setScanType(MA, null, barCode|qrCode|dmCode|pdf417Code)
2021-03-23 11:22:55.569 26282-14781/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] startPreviewing,cameraFacingType= 0
2021-03-23 11:22:55.569 26282-14782/apppackage D/[Scan]MPaasScanServiceImpl: [Scan-Recognized] setScanEnable(enable=true, cameraManager=com.alipay.camera.CameraManager@dae5554, scanController=com.alipay.mobile.bqcscanservice.impl.BQCScanController@4321cfd
2021-03-23 11:22:55.585 26282-26282/apppackage D/[Scan]MPaasScanServiceImpl: [main] BQCSurfaceCallback:onSurfaceTextureAvailable(): surface: android.graphics.SurfaceTexture@2c7ef25, width: 1080, height: 2408
2021-03-23 11:22:55.588 26282-14781/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] resetCurCameraParameters
2021-03-23 11:22:55.592 26282-14781/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] setPreviewCallback()
2021-03-23 11:22:55.592 26282-14781/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] requestPreviewFrameWithBuffer
2021-03-23 11:22:55.592 26282-14781/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] setPreviewParameters: surfaceTexture is : android.graphics.SurfaceTexture@2c7ef25
2021-03-23 11:22:55.592 26282-14781/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] onSurfaceAvailable:surfaceTexture:false, is surfaceAvailable android.graphics.SurfaceTexture@2c7ef25, surfaceAlreadySet:false
2021-03-23 11:22:55.592 26282-14781/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] Start to set preview surface
2021-03-23 11:22:55.782 26282-14781/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] onSurfaceAvailable:surfaceTexture:false, is surfaceAvailable android.graphics.SurfaceTexture@2c7ef25, surfaceAlreadySet:true
2021-03-23 11:22:57.372 26282-14782/apppackage D/[Scan]MPaasScanServiceImpl: [Scan-Recognized] setScanEnable(enable=false, cameraManager=com.alipay.camera.CameraManager@dae5554, scanController=com.alipay.mobile.bqcscanservice.impl.BQCScanController@4321cfd
2021-03-23 11:22:57.404 26282-14781/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] stopPreview(), surfaceTexture = null; textureView=null
2021-03-23 11:22:57.693 26282-26282/apppackage D/[Scan]MPaasScanServiceImpl: [main] onSurfaceTextureDestroyed: android.graphics.SurfaceTexture@2c7ef25
2021-03-23 11:22:57.738 26282-14781/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] The Camera FrameRate: mFrameNum = 44, duration = 1841, frame(ms)=41
2021-03-23 11:22:57.738 26282-14781/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] cleanUp: surfaceTexture = null, textureView = null
2021-03-23 11:22:59.373 26282-14959/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] setup()
2021-03-23 11:22:59.373 26282-14959/apppackage D/[Scan]MPaasScanServiceImpl: [Camera-Handler] startPreviewing,cameraFacingType= 0
2021-03-23 11:22:59.373 26282-14959/apppackage E/[Scan]MPaasScanServiceImpl: [Camera-Handler] startPreview(): cameraManager is null

最后会出现 因为 context 为空而导致的 cameraManager is null

不太理解为什么,setContext要在异步进行

com.alipay.android.phone.scancode.export.camera.ScanHandler#setContext

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.