Hi Frnds....
I m working on PIM API.I got an Illegal Argument Exception while adding a name by addStringArray method of PIM API.It doesnot appear on emulator .the error is on device.
My code is:
Code:private void addField(int field) { String label=""; try{ switch (item.getPIMList().getFieldDataType(field)) { case PIMItem.STRING: label = item.getPIMList().getFieldLabel(field); item.addString(field, PIMItem.ATTR_NONE, ""); break; case PIMItem.STRING_ARRAY: { label = item.getPIMList().getFieldLabel(field); int[] supportedElements = item.getPIMList().getSupportedArrayElements(field); int arraySize = 0; for (int i = 0; i < supportedElements.length; i++) { int n=(supportedElements[i] + 1); arraySize = Math.max(arraySize, supportedElements[i] + 1); } String[] a = new String[arraySize]; for (int i = 0; i < a.length; i++) { a[i] = ""; } item.addStringArray(field, PIMItem.ATTR_NONE, a); break; } case PIMItem.BINARY: label = item.getPIMList().getFieldLabel(field); item.addBinary(field, PIMItem.ATTR_NONE, new byte[16], 0, 16); break; case PIMItem.BOOLEAN: label = item.getPIMList().getFieldLabel(field); item.addBoolean(field, PIMItem.ATTR_NONE, false); break; case PIMItem.DATE: label = item.getPIMList().getFieldLabel(field); item.addDate(field, PIMItem.ATTR_NONE, new Date().getTime()); break; case PIMItem.INT: label = item.getPIMList().getFieldLabel(field); item.addInt(field, PIMItem.ATTR_NONE, 0); } }catch(Exception e) { Alert a = new Alert("Alert", e.toString(), null, AlertType.INFO); a.setTimeout(Alert.FOREVER); Display.getDisplay(midlet).setCurrent(a, this); } }

Reply With Quote

