Well.... After side loading and testing my app without any issues, the compiler can't get the job done.
I don't know if the issue is I have too many watch types selected, or that I keep getting 3 Build Warnings for each watch.
BUILD: WARNING: The launcher icon (30x30) is smaller than the specified launcher icon size of the device 'marqcommander' (40x40). Padding will be added to the image to center it.
BUILD: WARNING: marqcommander: \Sail Racer\source\SetSportMenuDelegate.mc:16: Some but not all code paths return a value
BUILD: WARNING: marqcommander: \Sail Racer\source\pickers\StringPicker3.mc:102: Some but not all code paths return a value
Do you think those warning should cause the compiler to hang and timeout ( it was running for about an hour ! ) and had given build warnings for 44 or 45 watch types.
BUILD: ERROR: build timed out
BUILD: Interrupted
Package Manager: Problem building package. See console for details. (100)
Can anyone suggest things that I should check to try and remove the warnings? and if they would be enough to stop the compilers?
This is the function MC 16 giving one of the warnings:
function onMenuItem(item) {
if (item == :Item1) {
Storage.setValue("sport", 1);
Storage.setValue("tackx", 6);
Storage.setValue("gybex", 6);
if (Attention has :vibrate && myTimer2 != null) {
Attention.vibrate(vibeStart);
}
} else if (item == :Item2) {
Storage.setValue("sport", 2);
Storage.setValue("tackx", 5);
Storage.setValue("gybex", 5);
if (Attention has :vibrate && myTimer2 != null) {
Attention.vibrate(vibeStart);
}
} else if (item == :Item3) {
Storage.setValue("sport", 3);
Storage.setValue("tackx", 4);
Storage.setValue("gybex", 4);
if (Attention has :vibrate && myTimer2 != null) {
Attention.vibrate(vibeStart);
}
} else if (item == :Item4) {
Storage.setValue("sport", 4);
if (Attention has :vibrate && myTimer2 != null) {
Attention.vibrate(vibeStart);
}
} else if (item == :Item5) {
Storage.setValue("sport", 5);
if (Attention has :vibrate && myTimer2 != null) {
Attention.vibrate(vibeStart);
}
} else if (item == :Item6) {
Storage.setValue("sport", 6);
if (Attention has :vibrate && myTimer2 != null) {
Attention.vibrate(vibeStart);
}
} else if (item == :Item7) {
Storage.setValue("sport", 7);
if (Attention has :vibrate && myTimer2 != null) {
Attention.vibrate(vibeStart);
}
}
if(myTimer2 == null){
WatchUi.switchToView(new SailRacerMainView(), new SailRacerDelegate(), WatchUi.SLIDE_LEFT);
System.println("justsetstorage " + Storage.getValue("sport"));
return true;
} else {
WatchUi.popView( WatchUi.SLIDE_RIGHT );
}
}
Here is the other function giving warnings
function onAccept(values) {
if(!mPicker.isDone(values[0])) {
mPicker.addCharacter(values[0]);
} else {
if(mPicker.getTitle().length() == 0) {
// Application.getApp().deleteProperty("string");
activeCourse = new[2];
WatchUi.popView(WatchUi.SLIDE_IMMEDIATE);
WatchUi.popView(WatchUi.SLIDE_IMMEDIATE);
} else {
if ( activeCourse[0] != null){
activeCourse[0] = mPicker.getTitle();
if(mCourses.size() == 1 && mCourses[0] == null) {
mCourses[0] = activeCourse;
System.println(mCourses);
activeCourse = new[1];
Storage.setValue("SmCourses", mCourses);
if (Attention has :vibrate) {
Attention.vibrate(vibeOne);
}
WatchUi.popView(WatchUi.SLIDE_RIGHT); // May need to label the course here using the dictionary?
WatchUi.popView(WatchUi.SLIDE_RIGHT);
WatchUi.popView(WatchUi.SLIDE_RIGHT);
return true;
} else {
mCourses.add(1);
mCourses[mCourses.size()-1] = activeCourse;
activeCourse = new[1];
System.println(mCourses);
Storage.setValue("SmCourses", mCourses);
if (Attention has :vibrate) {
Attention.vibrate(vibeOne);
}
WatchUi.popView(WatchUi.SLIDE_RIGHT); // May need to label the course here using the dictionary?
WatchUi.popView(WatchUi.SLIDE_RIGHT);
WatchUi.popView(WatchUi.SLIDE_RIGHT);
return true;
}
}
}
WatchUi.popView(WatchUi.SLIDE_IMMEDIATE);
}
}