2011-08-31 8 views
2

누군가이 문제를 해결했는지 궁금합니다. 궁극적으로 Android 앱을 출시 할 내 Android 휴대 전화에서 QR 코드를 스캔하고 싶습니다. 앱이 존재하는 경우 앱에 고유 한 정보가 표시됩니다. 앱이 존재하지 않으면 앱을 다운로드하기 위해 마켓 플레이스가 필요합니다. 이 작업을 수행 할 수 있습니까?QR if 진술?

어떤 도움이 크게 감사합니다 :)

+1

특정 QR 코드를 특정 앱과 어떻게 연결할 계획입니까? 앱을 실행하려면 앱의 전체 클래스 이름이 있어야합니다. 앱의 QR 코드에는 일반적으로 해당 앱의 시장에 인코딩 된 URL이 포함되어 있습니다. 어떻게 든 특정 시장 URL을 특정 클래스 이름과 연관시켜야합니다. –

+0

QR을 응용 프로그램없이 첫 번째로 스캔하는 방법은 무엇입니까? 불가능합니다 –

+1

이 작업을 수행 할 수 있는지 확실하지 않지만 QR 코드에서 앱의 시판 URL을 인코딩 할 수 있다고 생각합니다. 앱이 설치되지 않으면 시장이 열립니다. 그러나 설치되어있는 경우 앱에서 인 텐트 필터를 사용하여 해당 URL을 잡을 수 있습니다 (가능한 경우 정직하게 알 수 없음) –

답변

2

물론, 당신은 그렇게 할 수있는 응용 프로그램을 작성할 수 있습니다. Barcode Scanner은 실제로 원하는 일부 항목 (예 : 코드에서 시장을 여는 경우)이 open source 인 경우 원하는 부분을 실제로 처리합니다. 이 프로젝트에는 QR-/바코드를 스캔하는 데 사용할 수있는 라이브러리도 있습니다.

QR 코드는 기계로 읽을 수있는 형식의 문자열 일뿐입니다. 코드에 패키지 이름을 인코딩하고 스캔 할 수 있습니다. 성공적으로 수행 한 경우 해당 패키지 이름의 앱이 기기에 존재하는지 테스트합니다. 예인 경우 Intent으로 실행하십시오 (PackageManager.getLaunchIntentForPackage()입니다). 그렇지 않은 경우 시장 URL과 Intent.ACTION_VIEW을 통해 시장 페이지로 연결하십시오. 선택한 크기에 따라 일부 엑스트라를 QR 코드로 인코딩 할 수 있습니다.

패키지 이름의 이점은 이미 특정 앱의 Android 마켓 사이트로 연결되는 많은 코드가 있다는 것입니다. 그들의 형식은 당신이 볼 수 있듯이

market://search?q=pname:com.example 

는, 프로그래머가 이미 패키지 이름이 (여기 com.example)에 포함되어 있습니다. 구문 분석하여 사용할 수 있습니다. 엑스트라를 원하면 자신의 qr 코드를 인코딩해야합니다.