2017-01-28 1 views
2

IDCard에서 회사의 모든 사용자가 사용할 QR 코드를 읽는 앱을 만들려고합니다.전면 카메라로 ZXing 자동 시작

앱을 실행할 때 전면 카메라를 기본값으로 사용하고 싶습니다. 나는 뒤쪽 카메라로 그걸 할 수 있었지만 이상적으로 나는 버튼을 사용하여 전환 할 필요가 없다.

MainActivity :

public class MainActivity extends AppCompatActivity implements ZXingScannerView.ResultHandler { 
    private static final int REQUEST_CAMERA = 1; 
    private ZXingScannerView mScannerView; 

    Passageiros mPassageiro; // 

    Collection<Passageiros> listaPassageiros; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     mScannerView = new ZXingScannerView(this){ 

      @Override 
      protected IViewFinder createViewFinderView(Context context) { 
       return new CustomZXingScannerView(context); 
      } 

     }; 
     List<BarcodeFormat> formats = new ArrayList<>(); 

     formats.add(BarcodeFormat.QR_CODE); 

     setContentView(mScannerView); 

     int currentapiVersion = android.os.Build.VERSION.SDK_INT; 
     if (currentapiVersion >= android.os.Build.VERSION_CODES.M) { 
      if (checkPermission()) { 
       Toast.makeText(getApplicationContext(), "Permission already granted", Toast.LENGTH_LONG).show(); 

      } else { 
       requestPermission(); 
      } 

     } 
    } 

... 

} 

내가 어떻게 할 수 있습니까?

+0

@Daniel Kaparunakis Thx (개정판). –

답변

1

ZXingCameraView 당신이 setupLayout 방법으로 설정할 수있는 개인 CameraWrapper을 가지고 BarcodeScannerView을 확장하고 ZXing 라이브러리의 소스를 찾고 있습니다. CameraWrapper를 사용하면 com.android.Camera를 초기화 할 수 있습니다.

어떻게 가능한 카메라 중 필요한 선택하는

그 질문에 표시됩니다 : How do I open the "front camera" on the Android platform?

편집 : 사실 장치의 뒷면에 심지어 ZXing CameraUtils class 선택 카메라가있다. 그냥 앞 카메라의 ID를 반환하고 ZXingCameraView의 startCamera (frontCameraId)에 해당 ID를 전달하도록 변경하십시오.

+0

나는 미안하지만, 나는 아직도 배우고있다. 나는 너를 분명히 하겠지만, 나 한테 좀 더 설명 할 수 있니? –

+0

알았습니다. 나는 mScannerView.startCamera (1); 내 onResume에 –

+0

그것은 잘 작동합니다. 그때 대답을 수락;) – shtolik

관련 문제