使用 DataWedge 进行广播意图交付在 android 应用程序中不起作用



我正在尝试使用摩托罗拉MC40N0中的DataWedge在我的应用程序中获取条形码。我在DataWedge中创建了一个配置文件。Intent action是android.intent.action.DEFAULT,Intent类别是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>

以下是我在扫描活动中的代码:

 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);

但我什么也没得到。设置或代码是否有问题。提前谢谢。

可能与此处描述的相同数据楔形错误。

尝试删除数据楔形配置文件配置中的意图类别。

相关内容

  • 没有找到相关文章

最新更新