Google 코드 스캐너 API - 카메라 권한 없이 코드 스캔

Google 코드 스캐너 API는 앱이 카메라 권한을 요청하지 않고도 사용자 개인정보를 보호하면서 코드를 스캔할 수 있는 완벽한 솔루션을 제공합니다. 이는 코드를 스캔하는 작업을 Google Play 서비스에 위임하고 스캔 결과만 앱으로 반환함으로써 이루어집니다. 모든 이미지 처리는 기기에서 이루어지며 Google은 결과나 이미지 데이터를 저장하지 않습니다.


이 라이브러리를 사용하려면 다음 링크를 사용하십시오.



최상위 settings.gradle 파일에서 Google의 Maven 리포지토리와 Maven 중앙 리포지토리를 dependencyResolutionManagement 블록 아래에 포함합니다.

dependencyResolutionManagement {
 repositories {
 google()
 mavenCentral()
 }
}


일반적으로 app/build.gradle인 모듈의 Gradle 빌드 파일에 play-services-code-scanner SDK에 대한 Google Play 서비스 종속성을 추가합니다.

dependencies {
 implementation 'com.google.android.gms:play-services-code-scanner:16.0.0-beta1'
}


앱이 Play 스토어에서 설치되는 동안 Google Play 서비스에서 자동으로 스캐너 모듈을 기기에 다운로드하도록 앱을 구성할 수 있습니다. 이 단계를 건너뛰면 다른 사용 사례를 위해 스캐너 모듈이 아직 설치되지 않은 경우 Google Play 서비스에서 처음 사용할 때 스캐너 모듈을 다운로드합니다.

<application …>
 …
 <meta-data
 android:name="com.google.mlkit.vision.DEPENDENCIES"
 android:value="barcode_ui"/>
 …
</application>


사용하는 방법
- - -
(선택 사항) 코드 스캐너 구성
읽을 것으로 예상되는 바코드 형식을 알고 있는 경우 해당 형식만 감지하도록 구성하여 바코드 감지기의 속도를 향상시킬 수 있습니다. 예를 들어 Aztec 코드와 QR 코드만 감지하려면 다음 예와 같이 GmsBarcodeScannerOptions 객체를 빌드합니다.

//**** java ****
GmsBarcodeScannerOptions options = new GmsBarcodeScannerOptions.Builder()
 .setBarcodeFormats(
 Barcode.FORMAT_QR_CODE,
 Barcode.FORMAT_AZTEC)
 .build();



//**** kotlin ****
val options = GmsBarcodeScannerOptions.Builder()
 .setBarcodeFormats(
 Barcode.FORMAT_QR_CODE,
 Barcode.FORMAT_AZTEC
 )
 .build()


GmsBarcodeScanner 인스턴스 가져오기

//**** java ****
GmsBarcodeScanner scanner = GmsBarcodeScanning.getClient(this);
// Or with a configured options
// GmsBarcodeScanner scanner = GmsBarcodeScanning.getClient(context, options);



//**** kotlin ****
val scanner = GmsBarcodeScanning.getClient(this)
// Or with a configured options
// val scanner = GmsBarcodeScanning.getClient(this, options)


startScan()을 호출하여 코드 스캔 요청

//**** java ****
scanner
 .startScan()
 .addOnSuccessListener(
 barcode -> {
 // Task completed successfully
 })
 .addOnFailureListener(
 e -> {
 // Task failed with an exception
 });



//**** kotlin ****
scanner.startScan()
 .addOnSuccessListener { barcode ->
 // Task completed successfully
 }
 .addOnFailureListener { e ->
 // Task failed with an exception
 }


결과 바코드 처리

//**** java ****
String rawValue = barcode.getRawValue();



//**** kotlin ****
val rawValue: String? = barcode.rawValue




코드here (MainActivity.java) 및 참조Google code scanner (Beta)를 확인하십시오.

에 대한 귀하의 생각을 알려주십시오.

좋은 웹페이지 즐겨찾기