Ah I see I ran it in release mode and got the error:
syncevents_sync (java line: 349)
java.lang.IndexOutOfBoundsException: Index: 3, Size: 3
at java.util.ArrayList.get(ArrayList.java:437)
at anywheresoftware.b4a.objects.collections.List.Get(List.java:117)
at com.eureka.dispatchit.syncevents._sync(syncevents.java:349)
at com.eureka.dispatchit.syncevents._service_start(syncevents.java:315)
at java.lang.reflect.Method.invoke(Native Method)
at anywheresoftware.b4a.BA.raiseEvent2(BA.java:196)
at anywheresoftware.b4a.BA.raiseEvent(BA.java:176)
at com.eureka.dispatchit.syncevents.handleStart(syncevents.java:100)
at com.eureka.dispatchit.syncevents.access$000(syncevents.java:8)
at com.eureka.dispatchit.syncevents$1.run(syncevents.java:71)
at anywheresoftware.b4a.objects.ServiceHelper$StarterHelper.onStartCommand(ServiceHelper.java:237)
at com.eureka.dispatchit.syncevents.onStartCommand(syncevents.java:69)
at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:4298)
at android.app.ActivityThread.access$2700(ActivityThread.java:273)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2070)
at android.os.Handler.dispatchMessage(Handler.java:112)
at android.os.Looper.loop(Looper.java:216)
at android.app.ActivityThread.main(ActivityThread.java:7625)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:524)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:987)
So I had a look at Java line 349 and found the for each loop
for (; index10 < groupLen10;index10++){
_event = (com.eureka.dispatchit.workorderevent)(group10.Get(index10));
//BA.debugLineNum = 49;BA.debugLine="Dim Key As String = Event.id";
_key = BA.NumberToString(_event._id /*int*/ );
//BA.debugLineNum = 50;BA.debugLine="Dim Attempts As String = \"0\"";
_attempts = "0";
//BA.debugLineNum = 51;BA.debugLine="If Not(RetryMap.ContainsKey(Key)) Then";
if (anywheresoftware.b4a.keywords.Common.Not(_retrymap.ContainsKey((Object)(_key)))) {
//BA.debugLineNum = 52;BA.debugLine="RetryMap.Put(Key,Attempts)";
_retrymap.Put((Object)(_key),(Object)(_attempts));
};
//BA.debugLineNum = 54;BA.debugLine="Attempts = RetryMap.Get(Key)";
_attempts = BA.ObjectToString(_retrymap.Get((Object)(_key)));
//BA.debugLineNum = 56;BA.debugLine="If Attempts >= RetryLimit Then";
if ((double)(Double.parseDouble(_attempts))>=_retrylimit) {
//BA.debugLineNum = 57;BA.debugLine="LogColor($\"Event retry limit reached EventId:$";
anywheresoftware.b4a.keywords.Common.LogImpl("47536663",("Event retry limit reached EventId:"+anywheresoftware.b4a.keywords.Common.SmartStringFormatter("",(Object)(_event._id /*int*/ ))+""),anywheresoftware.b4a.keywords.Common.Colors.Red);
//BA.debugLineNum = 58;BA.debugLine="DataAccess.InsertRemoteID(0,Event.id)";
mostCurrent._dataaccess._insertremoteid /*String*/ (processBA,(int) (0),_event._id /*int*/ );
//BA.debugLineNum = 59;BA.debugLine="RemoveEventFromList(Event)";
_removeeventfromlist(_event);
//BA.debugLineNum = 60;BA.debugLine="RetryMap.Remove(Key)";
_retrymap.Remove((Object)(_key));
//BA.debugLineNum = 62;BA.debugLine="If Not(AlreadyQueuedToStart) Then";
if (anywheresoftware.b4a.keywords.Common.Not(_alreadyqueuedtostart)) {
//BA.debugLineNum = 63;BA.debugLine="Log(\"Sync failed events queued to start\")";
anywheresoftware.b4a.keywords.Common.LogImpl("47536669","Sync failed events queued to start",0);
//BA.debugLineNum = 64;BA.debugLine="StartServiceAtExact(SyncFailedEvents, DateTim";
anywheresoftware.b4a.keywords.Common.StartServiceAtExact(processBA,(Object)(mostCurrent._syncfailedevents.getObject()),(long) (anywheresoftware.b4a.keywords.Common.DateTime.getNow()+_retryfailedtime),anywheresoftware.b4a.keywords.Common.True);
//BA.debugLineNum = 65;BA.debugLine="AlreadyQueuedToStart = True";
_alreadyqueuedtostart = anywheresoftware.b4a.keywords.Common.True;
};
}else {
//BA.debugLineNum = 68;BA.debugLine="LogColor($\"Try Sync: EventID: ${Event.id} atte";
anywheresoftware.b4a.keywords.Common.LogImpl("47536674",("Try Sync: EventID: "+anywheresoftware.b4a.keywords.Common.SmartStringFormatter("",(Object)(_event._id /*int*/ ))+" attempt: "+anywheresoftware.b4a.keywords.Common.SmartStringFormatter("",_retrymap.Get((Object)(_key)))+""),anywheresoftware.b4a.keywords.Common.Colors.Magenta);
//BA.debugLineNum = 69;BA.debugLine="API.CreateEvent(Event)";
_api._createevent /*String*/ (_event);
//BA.debugLineNum = 70;BA.debugLine="AddOnMap(Event)";
_addonmap(_event);
};
}
The highlighted line is the line 349 the error message included. And i can now see it was the list I used.