【问题标题】:EMDK Android StudioEMDK 安卓工作室
【发布时间】:2017-04-17 01:52:54
【问题描述】:

谁能帮帮我....

我无法从 Symbol TC75 扫描仪接收到意图。我有设置配置文件向我的应用发送意图我的应用接收空意图。

我已将此代码放入 mainfest 文件中......

    <uses-permission android:name="com.symbol.emdk.permission.EMDK" />
        <uses-library android:name="com.symbol.emdk"/>

<activity
        android:name=".aufladen"
        android:screenOrientation="portrait"
        android:launchMode="singleTask">
        <intent-filter>
            <action android:name="com.draganm.mpreiscontainertracking.BARCODE" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>

在 onCreate 我把这个

EMDKResults results = EMDKManager.getEMDKManager(this.getApplicationContext(), this);


    if(results.statusCode == STATUS_CODE.FAILURE)
    {
        //Failed to create EMDKManager object
    }
    Intent i = getIntent();
    handleDecodeData(i);


@Override
public void onNewIntent(Intent i) {
    handleDecodeData(i);
}

private void handleDecodeData(Intent i) {
    if (i.getAction().contentEquals("com.draganm.mpreiscontainertracking.BARCODE")) {
        String data = i.getStringExtra("com.motorolasolutions.emdk.datawedge.data_string");

        if (data != null && data.length() > 0) {
        }
        Toast.makeText(this, data, Toast.LENGTH_LONG).show();
    }
}

在真实设备上玩这个应用程序后,我在日志中收到此错误

致命异常:主要 进程:com.dragam.mpreiscontainertracking,PID:5163 java.lang.RuntimeException:无法启动活动 组件信息{com.dragam.mpreiscontainertracking/com.dragam.mpreiscontainertracking.aufladen}: java.lang.NullPointerException:尝试调用虚拟方法 'boolean java.lang.String.contentEquals(java.lang.CharSequence)' 空对象引用 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2325) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 在 android.app.ActivityThread.access$800(ActivityThread.java:151) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) 在 android.os.Handler.dispatchMessage(Handler.java:102) 在 android.os.Looper.loop(Looper.java:135) 在 android.app.ActivityThread.main(ActivityThread.java:5254) 在 java.lang.reflect.Method.invoke(本机方法) 在 java.lang.reflect.Method.invoke(Method.java:372) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:904) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:699) 引起:java.lang.NullPointerException:尝试调用虚拟 方法'布尔 java.lang.String.contentEquals(java.lang.CharSequence)' 为空 对象引用 在 com.dragam.mpreiscontainertracking.aufladen.handleDecodeData(aufladen.java:610) 在 com.dragam.mpreiscontainertracking.aufladen.onCreate(aufladen.java:101) 在 android.app.Activity.performCreate(Activity.java:6012) 在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1106) 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2278) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 在 android.app.ActivityThread.access$800(ActivityThread.java:151) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1303) 在 android.os.Handler.dispatchMessage(Handler.java:102) 在 android.os.Looper.loop(Looper.java:135) 在 android.app.ActivityThread.main(ActivityThread.java:5254) 在 java.lang.reflect.Method.invoke(本机方法) 在 java.lang.reflect.Method.invoke(Method.java:372) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:904) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:699)

 

【问题讨论】:

  • i.getAction() 为空

标签: java android nullpointerexception symbols barcode-scanner


【解决方案1】:

我认为您混淆了检索扫描数据的不同方法。 Intent 仅从 DataWedge 服务 (http://techdocs.zebra.com/datawedge/6-0/guide/about/) 发送,但您也在初始化 EMDK 库 (http://techdocs.zebra.com/emdk-for-android/6-0/guide/gettingstarted/)。 EMDK 通过回调返回其数据。

如果您选择 DataWedge 路由,我有一个应用程序可以侦听可能有帮助的 DataWedge 意图:https://github.com/darryncampbell/DataWedge-API-Exerciser

如果选择EMDK路线,斑马自己的网站上有样品:http://techdocs.zebra.com/emdk-for-android/6-0/samples/barcode/

【讨论】:

  • 经过几天的搜索,我找到了解决方案.....我必须在 onNewIntent 方法中插入 super.onNewIntent @Override public void onNewIntent(Intent i) { super.onNewIntent(i);处理解码数据(i);但你的回答帮助我更了解这一点谢谢:)
猜你喜欢
  • 2016-05-28
  • 2013-07-08
  • 2014-04-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多