Próbujesz uzyskać dostęp do skanera ZXing na dwa bezpośrednio sprzeczne sposoby. Zadaniem modelu IntentIntegrator
dostarczanego przez ZXing jest ułatwienie dostępu do zewnętrznej aplikacji skanera poprzez zbudowanie dla Ciebie Intencji z odpowiednimi stałymi i flagami. Jeśli nie chcesz instalować i uruchamiać zewnętrznej aplikacji skanera z Android Market na urządzeniu, IntentIntegrator
nie jest dla Ciebie. Jest to również zgodne z opublikowanym przez ciebie kodem Java, ponieważ jest to zasadniczo to samo intencje, jakie stworzy integrator, aby uruchomić zewnętrzną aplikację.
Jeśli integrujesz ZXing z projektem jako biblioteką, komponenty stają się częścią Twojej aplikacji i muszą się do nich odwoływać. Na przykład deklaracja w AndroidManifest.xml należy dodać takie jak:
<activity android:name="com.google.zxing.client.android.CaptureActivity"
android:screenOrientation="landscape"
android:configChanges="orientation|keyboardHidden"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
android:windowSoftInputMode="stateAlwaysHidden">
<intent-filter>
<action android:name="com.google.zxing.client.android.SCAN"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
Upewnij się, że stosowane tu poprawną nazwę dla aktywności i działania, ponieważ mają one odwoływać się do biblioteki. Następnie można uruchomić aktywność skanera z kodu Java przy użyciu następujących:
int REQUEST_SCAN; //Request code for Intent result
String packageString = "com.yourapplication.packagename";
Intent intent = new Intent("com.google.zxing.client.android.SCAN");
intent.setPackage(packageString);
//Add any optional extras to pass
intent.putExtra("SCAN_MODE", "QR_CODE_MODE");
//Launch
startActivityForResult(intent, REQUEST_SCAN);
Zawiadomienie Intent działanie odpowiada deklaracji w manifeście, ale pakiet jest to aplikacja, a nie aplikacja Android Market ZXing.
HTH
http://stackoverflow.com/questions/7510430/qr-reader-in-android/7510615#7510615 ,, sprawdź to pytanie, jeśli to pomaga .. –
Witam, to [strona dla java i bitmapy] (http://code.google.com/p/zxing/wiki/DeveloperNotes), jeśli zrobisz zdjęcie aparatem, a potem zrobisz zdjęcie fototerapią, zadziała, ale to tylko pomysł. – kameny
@Onuray, jak rozwiązałeś problem? – Erum