4

Motorola MC40N0 で DataWedge を使用してアプリでバーコードを取得しようとしています。DataWedge でプロファイルを作成しました。インテント アクションは android.intent.action.DEFAULT で、インテント カテゴリは android.intent.category.MAIN で、ブロードキャスト インテントとしてインテント配信を選択しました。マニフェストのアクティビティは次のとおりです。

 <activity
     android:name="com.myproject.activities.ScanActivity"
     android:screenOrientation="portrait"
     android:theme="@android:style/Theme.NoTitleBar" >
     <intent-filter>
         <action android:name="android.intent.action.DEFAULT" />
         <category android:name="android.intent.category.MAIN" />
     </intent-filter>
 </activity>

以下は、私の ScanActivity にあるコードです。

 IntentFilter filter = new IntentFilter("android.intent.action.DEFAULT");
 BroadcastReceiver receiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
        try {
            String data = intent.getStringExtra("com.motorolasolutions.emdk.datawedge.data_string");
            System.out.println("scanned data: "+data);
        } catch (Exception ex) {
            System.out.println("exception in scanning: "+ex);
        }
    }
};
registerReceiver(receiver, filter);

しかし、私は何も得ていません。設定またはコードに問題がありますか。前もって感謝します。

4

1 に答える 1