Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 16 additions & 9 deletions app/build.gradle
Original file line number Diff line number Diff line change
@@ -1,19 +1,26 @@
apply plugin: 'com.android.application'

android {
compileSdkVersion 33
namespace 'com.csl.cs710awedgeapp'
buildFeatures {
buildConfig true
}

compileSdk 34
defaultConfig {
applicationId "com.csl.cs710awedgeapp"
minSdkVersion 21
targetSdkVersion 33
versionCode 5
versionName "5.9.11"
minSdk 23
targetSdk 34
versionCode 13
versionName "5.14.23"
}
namespace 'com.csl.cs710awedgeapp'
}

dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.google.android.material:material:1.9.0'
implementation project(path: ':cs710library4a')
}
implementation 'com.google.android.material:material:1.12.0'
implementation 'org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.5'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'com.github.hannesa2:paho.mqtt.android:4.3.beta2'
implementation project(':cslibrary4a')
}
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
32 changes: 21 additions & 11 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,26 +1,35 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

<uses-permission android:name="android.permission.BLUETOOTH_SCAN" />
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.STORAGE" />
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.NFC" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

<application
android:allowBackup="true"
android:label="@string/app_name_simplewedge"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_newname1"
android:supportsRtl="true"
android:requestLegacyExternalStorage="true"
android:theme="@style/AppTheme">

<service android:name="CustomIME"
android:label="@string/app_ime1"
android:label="@string/app_ime_simplewedge1"
android:exported="true"
android:permission="android.permission.BIND_INPUT_METHOD">

<intent-filter>
<action android:name="android.view.InputMethod" />
</intent-filter>
Expand All @@ -31,16 +40,17 @@
android:name="MainActivity"
android:exported="true"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>

<intent-filter>
<action android:name="android.nfc.action.ACTION_TAG_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>

<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.csl.cs108library4a;
package com.csl.cs710awedgeapp;

import android.app.Activity;
import android.app.AlertDialog;
Expand Down Expand Up @@ -28,7 +28,7 @@ public void onClick(DialogInterface dialog, int buttonId) {
ans_false.run();
}
});
dialog.setIcon(android.R.drawable.ic_dialog_alert);
dialog.setIcon(R.drawable.alert);
dialog.show();
return true;
}
Expand Down
149 changes: 91 additions & 58 deletions app/src/main/java/com/csl/cs710awedgeapp/CustomIME.java
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
import android.view.View;
import android.view.inputmethod.InputConnection;

import com.csl.cs710library4a.CsLibrary4A;
import com.csl.cslibrary4a.RfidReaderChipData;

import java.util.ArrayList;

Expand Down Expand Up @@ -46,70 +46,94 @@ public void onDestroy() {

ArrayList<String> epcArrayList = new ArrayList<String>();
InventoryRfidTask inventoryRfidTask;
InventoryBarcodeTask inventoryBarcodeTask;
boolean inventoring = false;
private Runnable serviceRunnable = new Runnable() {
@Override
public void run() {
String strCurrentIME = Settings.Secure.getString(getContentResolver(), Settings.Secure.DEFAULT_INPUT_METHOD);
String strCompare = getPackageName();
appendToLog("CustomIME Debug 0 with strCurrentIME = " + strCurrentIME + ", strCompare = " + strCompare);
if (strCurrentIME.contains(strCompare) == false) return;

mHandler.postDelayed(serviceRunnable, 1000);
if (MainActivity.sharedObjects == null) return;
if (MainActivity.csLibrary4A == null) return;

if (inventoring == false) { MainActivity.sharedObjects.serviceArrayList.clear(); epcArrayList.clear(); }
if (MainActivity.mContext == null) return;
appendToLog("CustomIME Debug 1 with activityActive = " + MainActivity.activityActive + ", wedged = " + MainActivity.wedged + ", isBleConnected = " + MainActivity.csLibrary4A.isBleConnected());
if (MainActivity.activityActive == false /*&& MainActivity.wedged*/ && MainActivity.csLibrary4A.isBleConnected()) {
if (MainActivity.csLibrary4A.getTriggerButtonStatus() == false) {
appendToLog("CustomIME Debug 2");
startStopHandler();
inventoring = false;
} else if (inventoring == false) {
appendToLog("CustomIME Debug 3");
if (MainActivity.sharedObjects.runningInventoryRfidTask == false && MainActivity.sharedObjects.runningInventoryBarcodeTask == false && MainActivity.csLibrary4A.mrfidToWriteSize() == 0) {
if (strCurrentIME.contains(strCompare) == false) { }
else if (MainActivity.sharedObjects == null || MainActivity.csLibrary4A == null) { }
else if (MainActivity.mContext == null) return;
else {
if (inventoring == false) {
MainActivity.sharedObjects.serviceArrayList.clear();
epcArrayList.clear();
}
appendToLog("CustomIME Debug 1 with activityActive = " + MainActivity.activityActive + ", wedged = " + MainActivity.wedged + ", isBleConnected = " + MainActivity.csLibrary4A.isBleConnected());
if (MainActivity.activityActive == false /*&& MainActivity.wedged*/ && MainActivity.csLibrary4A.isBleConnected()) {
if (MainActivity.csLibrary4A.getTriggerButtonStatus() == false) {
appendToLog("CustomIME Debug 2 with runningInventoryRfidTask = " + MainActivity.sharedObjects.runningInventoryRfidTask);
appendToLog("CustomIME Debug 2 with runningInventoryBarcodeTask = " + MainActivity.sharedObjects.runningInventoryBarcodeTask);
startStopHandler();
inventoring = true;
}
} else {
appendToLog("CustomIME Debug 4");
while (MainActivity.sharedObjects.serviceArrayList.size() != 0) {
String strEpc = MainActivity.sharedObjects.serviceArrayList.get(0); MainActivity.sharedObjects.serviceArrayList.remove(0);
boolean matched = false;
for (int i = 0; i < epcArrayList.size(); i++) {
if (epcArrayList.get(i).matches(strEpc)) {
matched = true;
break;
}
inventoring = false;
} else if (inventoring == false) {
appendToLog("CustomIME Debug 3 with runningInventoryRfidTask = " + MainActivity.sharedObjects.runningInventoryRfidTask + ", and mrfidToWriteSize = " + MainActivity.csLibrary4A.mrfidToWriteSize());
appendToLog("CustomIME Debug 3 with runningInventoryBarcodeTask = " + MainActivity.sharedObjects.runningInventoryBarcodeTask);
if (MainActivity.sharedObjects.runningInventoryRfidTask == false && MainActivity.sharedObjects.runningInventoryBarcodeTask == false && MainActivity.csLibrary4A.mrfidToWriteSize() == 0) {
startStopHandler();
inventoring = true;
}
if (matched == false && strEpc != null) {
epcArrayList.add(strEpc);
InputConnection ic = getCurrentInputConnection();
if (MainActivity.wedgePrefix != null) strEpc = MainActivity.wedgePrefix + strEpc;
if (MainActivity.wedgeSuffix != null) strEpc += MainActivity.wedgeSuffix;
switch (MainActivity.wedgeDelimiter) {
default:
strEpc += "\n";
break;
case 0x09:
strEpc += "\t";
break;
case 0x2C:
strEpc += ",";
break;
case 0x20:
strEpc += " ";
break;
case -1:
break;
} else {
appendToLog("CustomIME Debug 4");
while (MainActivity.sharedObjects.serviceArrayList.size() != 0) {
String strEpc = MainActivity.sharedObjects.serviceArrayList.get(0);
MainActivity.sharedObjects.serviceArrayList.remove(0);
appendToLog("CustomIME Debug 4A with strEpc = " + strEpc);
String strSgtin = null;
if (MainActivity.wedgeOutput == 1) {
strSgtin = MainActivity.csLibrary4A.getUpcSerial(strEpc);
MainActivity.csLibrary4A.appendToLog("strSgtin = " + (strSgtin == null ? "null" : strSgtin));
if (strSgtin == null) strEpc = null;
}
boolean matched = false;
if (epcArrayList != null && strEpc != null) {
for (int i = 0; i < epcArrayList.size(); i++) {
if (epcArrayList.get(i).matches(strEpc)) {
matched = true;
break;
}
}
}
if (matched == false && strEpc != null) {
epcArrayList.add(strEpc);
InputConnection ic = getCurrentInputConnection();
String strValue = strEpc;
if (strSgtin != null) strValue = strSgtin;
if (MainActivity.wedgePrefix != null)
strValue = MainActivity.wedgePrefix + strValue;
if (MainActivity.wedgeSuffix != null)
strValue += MainActivity.wedgeSuffix;
MainActivity.csLibrary4A.appendToLog("CustomIME, serviceRunnable: wedgeDelimiter = " + MainActivity.wedgeDelimiter);
switch (MainActivity.wedgeDelimiter) {
default:
strValue += "\n";
break;
case 0x09:
strValue += "\t";
break;
case 0x2C:
strValue += ",";
break;
case 0x20:
strValue += " ";
break;
case -1:
break;
}
MainActivity.csLibrary4A.appendToLog("CustomIME BtData to Keyboard: " + strValue);
ic.commitText(strValue, 1);
}
ic.commitText(strEpc, 1);
}
}
}
}
int iDelayms = 500;
if (inventoring) iDelayms = 100;
MainActivity.csLibrary4A.appendToLog("CustomIME BtData set next time as " + iDelayms);
mHandler.postDelayed(serviceRunnable, iDelayms);
}
};

Expand All @@ -121,17 +145,26 @@ void startStopHandler() {
if (inventoryRfidTask != null) {
if (inventoryRfidTask.getStatus() == AsyncTask.Status.RUNNING) started = true;
}
if (inventoryBarcodeTask != null) {
if (inventoryBarcodeTask.getStatus() == AsyncTask.Status.RUNNING) started = true;
}
appendToLog("CustomIME Debug 10");
if ((started && MainActivity.csLibrary4A.getTriggerButtonStatus()) || (started == false && MainActivity.csLibrary4A.getTriggerButtonStatus() == false)) return;
if (started == false) {
appendToLog("CustomIME Debug 11 with BtData wedgeOutput = " + MainActivity.wedgeOutput);
if (MainActivity.wedgeOutput == 2) {
inventoryBarcodeTask = new InventoryBarcodeTask();
inventoryBarcodeTask.execute();
} else {
MainActivity.csLibrary4A.setPowerLevel(MainActivity.wedgePower);
MainActivity.csLibrary4A.startOperation(RfidReaderChipData.OperationTypes.TAG_INVENTORY_COMPACT);
inventoryRfidTask = new InventoryRfidTask();
inventoryRfidTask.execute();
}
} else {
appendToLog("CustomIME Debug 11");
MainActivity.csLibrary4A.startOperation(CsLibrary4A.OperationTypes.TAG_INVENTORY);
inventoryRfidTask = new InventoryRfidTask();
inventoryRfidTask.execute();
}
else {
appendToLog("CustomIME Debug 11");
inventoryRfidTask.taskCancelReason = InventoryRfidTask.TaskCancelRReason.BUTTON_RELEASE;
if (inventoryRfidTask != null) inventoryRfidTask.taskCancelReason = InventoryRfidTask.TaskCancelRReason.BUTTON_RELEASE;
if (inventoryBarcodeTask != null) inventoryBarcodeTask.taskCancelReason = InventoryBarcodeTask.TaskCancelRReason.BUTTON_RELEASE;
}
}
}
44 changes: 22 additions & 22 deletions app/src/main/java/com/csl/cs710awedgeapp/DrawerListContent.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ public enum DrawerPositions {
UCODE8, UCODEDNA,
BAPCARD, COLDCHAIN, AURASENSE,
KILOWAY,
LONGJING,
AXZON, RFMICRON,
FDMICRO,
CTESIUS,
Expand Down Expand Up @@ -55,16 +56,17 @@ public static DrawerPositions toDrawerPosition(int x) {
case 15: return COLDCHAIN;
case 16: return AURASENSE;
case 17: return KILOWAY;
case 18: return AXZON;
//case 15: return RFMICRON;
case 19: return FDMICRO;
case 20: return CTESIUS;
case 21: return ASYGNTAG;

case 22: return REGISTER;
case 23: return READWRITEUSER;
case 24: return WEDGE;
case 25: return DIRECTWEDGE;
case 18: return LONGJING;
case 19: return AXZON;
//case 18: return RFMICRON;
case 20: return FDMICRO;
case 21: return CTESIUS;
case 22: return ASYGNTAG;

case 23: return REGISTER;
case 24: return READWRITEUSER;
case 25: return WEDGE;
case 26: return DIRECTWEDGE;
}
return null;
}
Expand All @@ -84,25 +86,23 @@ public static DrawerPositions toDrawerPosition(int x) {
addItem(new DrawerItem("9", "Security", R.drawable.dl_access));

addItem(new DrawerItem("10", "Impinj Special Features", R.drawable.dl_loc));
//addItem(new DrawerItem("10", "Impinj M775", R.drawable.dl_loc));
//addItem(new DrawerItem("11", "Impinj Autotune", R.drawable.dl_loc));
addItem(new DrawerItem("11", "Alien", R.drawable.dl_loc));
addItem(new DrawerItem("12", "NXP UCODE 8", R.drawable.dl_loc));
addItem(new DrawerItem("13", "NXP UCODE DNA", R.drawable.dl_loc));
addItem(new DrawerItem("14", "uEm CS9010 BAP ID Card", R.drawable.dl_loc));
addItem(new DrawerItem("15", "uEm Cold Chain CS8300", R.drawable.dl_loc));
addItem(new DrawerItem("16", "uEm Aura-sense", R.drawable.dl_loc));
addItem(new DrawerItem("17", "Kiloway KX2005X-BL", R.drawable.dl_rr));
addItem(new DrawerItem("18", "Axzon", R.drawable.dl_loc));
//addItem(new DrawerItem("18", "Axzon Magnus", R.drawable.dl_loc));
addItem(new DrawerItem("19", "FM13DT160", R.drawable.dl_loc));
addItem(new DrawerItem("20", "Landa CTESIUS", R.drawable.dl_loc));
addItem(new DrawerItem("21", "Asygn AS321x", R.drawable.dl_loc));

addItem(new DrawerItem("22", "Register Tag", R.drawable.dl_rr));
addItem(new DrawerItem("23", "Large sized memory read/write", R.drawable.dl_rr));
addItem(new DrawerItem("24", "Wedge", R.drawable.dl_rr));
addItem(new DrawerItem("25", "Direct Wedge", R.drawable.dl_rr));
addItem(new DrawerItem("18", "EL-N2ESL CS6861", R.drawable.dl_rr));
addItem(new DrawerItem("19", "Axzon", R.drawable.dl_loc));
addItem(new DrawerItem("20", "FM13DT160", R.drawable.dl_loc));
addItem(new DrawerItem("21", "Landa CTESIUS", R.drawable.dl_loc));
addItem(new DrawerItem("22", "Asygn AS321x", R.drawable.dl_loc));

addItem(new DrawerItem("23", "Register Tag", R.drawable.dl_rr));
addItem(new DrawerItem("24", "Large sized memory read/write", R.drawable.dl_rr));
addItem(new DrawerItem("25", "Wedge", R.drawable.dl_rr));
addItem(new DrawerItem("26", "Direct Wedge", R.drawable.dl_rr));
}

private static void addItem(DrawerItem item) {
Expand Down
Loading