0

My customer is using Zebra TC51 devices together with RhoMobile. He wants to upgrade from Android 7.1 to Android 8.1. After the upgrade using the latest lifeguard update, our RhoMobile Application is no longer able to use the scanner. It is not reacting at all. The implementation is using the Barcode Javascript API, and it works fine on TC51 Android 7.1 and actually also on new TC52 Devices with Android 8.1 with latest Lifeguard. The problem exists only with upgraded TC51 devices.

Anyways, i had great success with any TCx device and a Cordova Container using DataWedge as the Barcode provider. I tried to get this to work with RhoMobile as well.

Here is my AndroidManifest.erb code

...
  <receiver android:name='com.rho.intent.IntentReceiver'>
    <intent-filter>
      <action android:name='<%= @appPackageName %>.ACTION'/>
      <action android:name='com.symbol.datawedge.api.RESULT_ACTION'/>
      <action android:name='com.symbol.button.L1'/>
      <action android:name='com.symbol.button.R1'/>
      <action android:name='com.symbol.button.L2'/>
      <action android:name='com.symbol.button.R2'/>
      <category android:name='android.intent.category.DEFAULT'/>
    </intent-filter>
  </receiver> 
</application>
...

And my code looks like this

try {
    Rho.Intent.startListening((data) => {
        alert(JSON.stringify(data));
    });
    const intentParams = {
        action: "com.symbol.datawedge.api.ACTION",
        intentType: Rho.Intent.BROADCAST,
        data: {
            "SEND_RESULT": "false",
            "com.symbol.datawedge.api.GET_VERSION_INFO": ""
        }
    };
    Rho.Intent.send(intentParams);
} catch (e) {
    alert(e);
} 

When i run the code and monitor logcat is see that the intent is received and an answer is sent

09-24 10:10:02.863  1732  1732 D com.symbol.datawedge.api.m: 
onReceive(..):com.symbol.datawedge.ScanningService@4191885,Intent { 
act=com.symbol.datawedge.api.ACTION flg=0x10 (has extras) }
09-24 10:10:02.877  1413  1477 E ActivityManager: Sending non-protected broadcast 
com.symbol.datawedge.api.RESULT_ACTION from system 1732:com.symbol.datawedge/u0a10 pkg 
com.symbol.datawedge

but it is never received in my app. any hints/ideas?

esskar
  • 10,638
  • 3
  • 36
  • 57
  • 1
    The Error seems to indicate Extras. May be Datawedge Version got upgraded? Check Receiving Results in this [link](https://techdocs.zebra.com/datawedge/6-3/guide/api/overview/) – MdBasha Sep 24 '20 at 12:50
  • 1
    You tagged me to have a look but I can't see anything wrong with the code, it looks like you are passing the correct extras & values and setting up the Intent correctly, but it has been years since I have used Rho. Couple of suggestions, maybe ask this on the tau technologies forum which is monitored by the current maintainers (https://forums.tau-technologies.com/) and also try the latest version of RhoMobile Suite as that might resolve the issue with the Barcode API. Working on new TC52 devices but not upgraded TC51 devices is very strange as it is the same underlying software platform. – Darryn Campbell Sep 25 '20 at 08:08

0 Answers0