2016-05-11 8 views
2

私はNetbeans 8.1とgluonhq jfxplugin 2.2.0を使用しています。Gluonチャームダウンバーコードスキャナ - インテントハンドラが見つかりません

私はバーコードを読もうとしていて、新しいプロジェクト(標準のhello world)を作成しました。私は、Button HandlerをUpdateText()(以下)という関数を呼び出すように変更し、Charm Down Scanサービスを呼び出します。

私はアプリを実行し、ボタンをクリックし、私は、Androidデバイスマネージャで次のエラーを取得する:

E/AndroidRuntime(3583): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=com.gluonhq.charm.down.android.scan.SCAN cat=[android.intent.category.DEFAULT] flg=0x4080000 } 

このクラッシュはscanservice.scan()ライン上で起こっています。

ボタンのクリックハンドラコード:

protected void UpdateText(Label label) { 
     ScanService scanService = PlatformFactory.getPlatform().getScanService(); 
     StringProperty scannedString = scanService.scan(); 
     scannedString.addListener((obs, ov, nv) -> System.out.println("Scanned String = " + nv)); 
    } 

私は非常にあなたのAndroidManifest.xmlファイルにcom.gluonhq.charm.down.android.scan.SCAN意図を定義する必要が任意のヘルプ

答えて

2

をいただければ幸いです。あなたの主な活動の定義の下に、次の活動の定義を追加します。

<activity android:name="com.gluonhq.charm.down.android.scan.zxing.CaptureActivity" 
     android:screenOrientation="sensorLandscape" 
     android:clearTaskOnLaunch="true" 
     android:stateNotNeeded="true" 
     android:windowSoftInputMode="stateAlwaysHidden"> 
    <intent-filter> 
     <action android:name="com.gluonhq.charm.down.android.scan.SCAN"/> 
     <category android:name="android.intent.category.DEFAULT"/> 
    </intent-filter> 
</activity> 

デフォルトでは、AndroidManifest.xmlファイルには、プラグインにより、ボンネットの下に生成されます。まだカスタムAndroidManifest.xmlファイルを設定していない場合は、プラグインが生成するものをコピーできます。デフォルトのバージョンはbuild/javafxports/tmp/android/AndroidManifest.xmlです。その1つを永続的な場所、つまりsrc/androidにコピーしてください。そして、それはデフォルトの1を生成するカスタムAndroidManifest.xmlファイルを代わりに使用する必要がありますプラグインを伝えるために、あなたのbuild.gradleを更新:

jfxmobile { 
    android { 
     manifest = 'src/android/AndroidManifest.xml' 
    } 
} 

更新: はまたzxingに余分な依存関係を追加する必要がありますコアライブラリ、それだけでは魅力ライブラリに依存したときに、それが自動的に含まれていないようだとして:

dependencies { 
    androidRuntime 'com.google.zxing:core:3.2.1' 
} 

また、あなたが同様にあなたのマニフェストにCAMERA権限を追加する必要があります:

+0

'AndroidManifest.xml'はすでに 'src/android'フォルダにあります。アクティビティを追加した後、ボタンをクリックすると、アプリケーションがクラッシュする前にZXingスクリーンが画面上で点滅します。 エラーが発生しました: 'java.lang.NoClassDefFoundError:失敗した解決:Lcom/google/zxing/BarcodeFormat; –

+0

こんにちは、私は解決策を使って答えを更新しました。 –

関連する問題