Logbook Pro for iPhone crashing, and other comments...

v1.0.4 Comments

Hi Neal,

Here are some comments from my in-flight test of v1.0.4:

First off: I love it! :D The time zone issue is completely resolved, and the options to use GMT and set a flight as 'pending' are fantastic. Also, I like the ability to further customize the fields that are diplayed on the 'new flight' screen. Thank you for these new features, and once again thank you for the time you put in to getting the time zone issue resolved - I can't tell you how much I appreciate it!

Unfortunately, however, I've encountered a few new issues:

(1) When saving a 'pending' flight, I get a pop-up with an 'Error SaveRecent' message that reads: 'Object reference not set to an instance of an object'. Here is a screenshot:

photo 1.PNG

(2) I consistently get a freeze followed by a crash after turning 'aiplane mode' off and then returning to the app with the 'new flight' screen open. I have been able to consistently reproduce this crash using the following steps:

- turn 'airplane mode' ON
- open 'new flight' screen
- exit Logbook Pro
- turn 'airplane mode' OFF
- resume Logbook Pro

This seems to have nothing to do with time zones (I have tried it with and without time zone changes). I'm on the road for another couple of days, but I'll see if I can dig up some crash logs and get them to you when I return home. Using the 'pending flight' option will avoid this issue (and I do), but there are instances where I would like to leave the 'new flight' screen open and return to the app at a later time. The whole poing of multi-tasking is to allow you to do this.

I also have a couple of comments entirely cosmetic in nature, and more nit-picky than anything (but I know you like perfection):

(3) The red font of the date / aircraft type line of flights saved as 'pending' is a different size than the rest. Sometimes, when editing one of these entries and saving again, the font will shrink to the correct size. This is illustrated in this screenshot:

photo 2.PNG

(4) This comment is extremely minor in nature, and more selfish than anything (I almost feel stupid bringing it up). The text in a blank 'ident' field on the 'new flight' screen says 'N-Number'. Is there any way to make it read something more universal to include countries that don't use n-numbers, such as 'reg. no.', or 'reg. markings', etc.? I know, very, VERY nit-picky.

Anyway, those are my initial comments. This version is by far the best yet, with some great new features and all of the issues we discussed earlier resolved. Thank you for all the effort you've put into this app - it is now my far one of the most useful on my iPhone.

Cheers,

Chris

:cool:
 
Hello Chris,

Thank you for the feedback. As to the error, try turning off the Recent Recall in the Options/Flight Log Settings or you can create one flight that is complete and the recent item data will get populated. I'll log this to be investigated, however, you can see the new error detection system that prevents the app from crashing which is good. Now we can pin down these small flow of events that may need attention. As to your second issue, I'll investigate and let you know what I find.

The font for the first line is set to auto-scale. You're probably seeing it "full size" but when you have a lot of data on that top row, the iPhone has been instructed to shrink it automatically to try to make it viewable but does have a lower limit so it's not microscopic. So this is by design, I know it can be unsightly but it has a purpose to try and present you the information in the limited space.

I agree with the N-Number, I'll change it to Ident like that is used in Logbook Pro PC edition.

I'll report back when I have a chance to review your second issue, it may be related to the first though, not sure. Thanks for the report. Please keep the great feedback coming and of course remember it's still a brand new software application, as with all software they continually evolve. We're still evolving Logbook Pro PC edition 12 years later! Always new and neat things to add and of course a few things that need fixin! :) I also welcome your review in iTunes so others can learn from your experiences that are considering purchase of the app.

Thanks again.
 
Thanks for the quick reply, Neal.

As to the error, try turning off the Recent Recall in the Options/Flight Log Settings...
Even with the recent recall options selected, the error message is only displayed sometimes. I've yet to pinpoint the specific pattern.

As to your second issue, I'll investigate and let you know what I find.
With regard to the crash, I experienced it today even without having the 'new flight' window open when backgrounded. Maybe this indicates it has more to do with the transition out of airplane mode. Once again, I'll find the crash logs when I get home, and maybe they'll have a better answer for you.

The font for the first line is set to auto-scale.

Ahhhh, I see. That makes perfect sense. Not really that unsightly at all, now that I know what it's doing.

I agree with the N-Number, I'll change it to Ident like that is used in Logbook Pro PC edition.

Wonderful!

...remember it's still a brand new software application, as with all software they continually evolve.
Absolutely! Growing pains are expected but, even that said, so far with LBP4iP they are minimal at worst. My comments are in no way complaints - simply constructive criticisms and bug reports to help make it even better.

There's a 5-star review with my name on it for the last version, and there's another on the way for this one (as I'm sure there will be for the next)! :D

Thanks again for the help.

Cheers,

Chris

:cool:
 
Thanks again Chris, for the review and feedback. Last night "out on the town" I tinkered with going in and out of airplane mode, and duplicated the crash situation. It's not related to any specific page in Logbook Pro on the iPhone. I'm not sure what the cause is but I will find it and fix it in 1.0.5. I'll probably wait a week or so and see if any other issues come in to make sure I'm not reacting to every issue with an update, need to let 1.0.4 hit the field. What you could do in the interim regarding airplane mode is when complete with your entries and marking flights as Pending, close the suspended app so Logbook Pro is not resuming out of airplane mode but starting fresh and see if that's a work around for you until this issue is resolved.

I'm not sure what's causing the SaveRecent error, I can't duplicate it, but I'll trace the code and see what I can find. Fortunately in 1.0.4 these types of issues will only display a message as a notification and not crash the app. This will raise awareness of the small issues that need to be ironed out and allow me to fix them in a non-critical fashion. I'd go ahead and leave your recall options as you like, it may not have anything to do with the save/loading of recent but instead just loading a variable in code, etc. I'll pin it down.

No feedback or criticism is too small, anything that raises an eyebrow and you want to ask, please do. I'm extremely pleased with the app, it's only the 3rd revision and I think we are well on the way to a stable and useful app that allows people to rapidly enter their new data and sync back to the seamless and effortless cloud sync system to get data into the PC and spend little time dealing with logging flights. I've always said I want you flying not sitting at your computer fiddling with logbook software. While I'd love to hear everyone tinkering away at Logbook Pro, the design goal is to do with it what you need them get back out their golfing and have fun, not let it consume you.

Have a great weekend. I look forward to some new features coming down the road such as the schedule importer integration.
 
Neal,

I have the same problem with saveRecent error. perhaps i can shed some more light on it through my entry process.

It happened with me on my first attempt to pre-enter a flight and save it as pending. i have a trip coming up and have tried to enter 3 flights with the same result every time. (just now i experienced a crash as well. previously i had entered 2 flights as pending, "suspended" the app, and reopened it to enter some more to see if i could find a pattern to the saverecent problem. as soon as i tapped the plus icon for new flight, i got freeze and crash. this is about 5 minutes after entering the first 2 flights and i'm NOT in airplane mode, nor did i switch it on or off before this.)

i'm entering the flights for aug 9 and today is july 31. perhaps it has something to do with it being a different month, or more than a week away or something?

i'm entering scheduled out and in times and leaving the duration field blank. (although allowing it to auto calculate and leaving the duration entered does not fix the problem)

i'm entering a route but not an "ident" (for the foreigners;))

not entering any landings

entered remarks (flight number and crew)

so far each result is the exact same. however, after saving the flight initially, and going back into the flight to make an edit or to add information (remarks) and saving again, i do NOT get the error. so it only happens when saving the flight for the first time.



while i'm thinking about it...here's a suggestion that just feels intuitive to me... how about have the first blank line below the entered flights be tappable for "create new flight"? seems intuitive to me and i find myself doing it and thinking, "why isn't it going? oh, yeah it's down here." that way it's a bigger target rather than that little plus icon. quicker, easier.
 
Thanks for the feedback Andy. I'll see what I can find as I investigate the SaveRecent issue. It shouldn't cause a crash but just let you acknowledge something didn't complete in the code routine properly for saving the recent entry data. And it probably should NOT be running that routine at all in the pending flight situation ultimately is probably what the problem is. Should be an easy fix.

The + button is more in line with the Apple UI such as in other apps. I have considered a row at the TOP to add a new flight but it just takes up screen space so I decided not to go down that path. The row at the bottom is not a good idea, what if you have 50 flights entered? It's more of a hassle to find the add new flight there than it is to tap the + button which is always in the known location. It's just a matter of learning where things are in the new app and then it will be part of muscle memory. :)

Thanks again...getting great feedback via e-mail, etc. that 1.0.4 seems to have hit the sweetspot! Very happy to hear this.
 
I agree that if you have 50 flights that having it at the bottom would be bad. and I see your point on the top row, however i think that is a viable option, perhaps make that row not quite as tall as the rest so it would save a little screen real estate. after all, the app isn't supposed to be for browsing flights, but rather entering and then syncing, thus the entry should be the easiest feature and i think at the top row fits that quality quite nicely (unlike my idea of at the bottom).

the plus icon is not a problem, and to be clear, i didn't mean to get rid of the plus, just to add the "tap to create new" row, thus having 2 buttons that do the same thing. so you can use either-or (such as in the case where the "add new" row is not visible because of too many entries, whether it be at the top or bottom.)

not a big deal, just a suggestion.


here's another thought about the 24 hour time picker thing. since the app converts the picker entry to 24 hour time when you go back to the flight entry screen, could you just make the 24 hour and gmt equivalent conversion display above the time picker while you're spinning in times? (or is the time picker a whole screen type thing where you can't add to it?) that way you could have all three times showing at once and make everybody happy at once (kindof).
 
There are so many ways to skin this cat! That's the hard part and the easy part all in the same. The easy part of iPhone development, and why it's been such a joy is there is so little to work with unlike the Windows version which has a million ways to do something! The hard part is creatively figuring out the user-interface but not make it cluttered, cumbersome, and quite frankly just a mess. My goal with this app is to make it clean, lightweight, and fast. Data entry is fast unlike other apps that have you going back and forth so much you'll get dizzy! And the cloud sync is effortless and as I say "it just works!"

The problem with the date picker is in fact space available. Maybe not in portrait mode but if you rotate your device to landscape you'll see the available space go away. My original plan with the "Use GMT" feature was to add a toolbar below the date picker where you could choose "Local | GMT" and it would change instantly. There wasn't enough space for a toolbar on the bottom and on the one above the date picker there is no room for any more buttons.

I have a few ideas already noted regarding 24 HR time formats, etc. I'll experiment with them for the 1.0.5 update.
 
Glad to hear you at least have ideas on how to address 24 hour time. As I'm sure you can tell, that was concerning me. As far as the time picker space issue you mentioned, I don't see the problem. Could this possibly be a difference in the resolution of the retina display versus the previous models where I have physically more pixels and the picker takes up less space on my display? It looks like I have available space...?

I am showing just less than about a centimeter above and below the picker in landscape orientation of totally black space. It looks to be the same height as the black bars with "clear" "date/time" "now" buttons. I do have a screenshot, but don't know how to add attachments to the forum from iPhone.

I understand you have to code for compatibility across the devices, just confused since I seem to have room.
 
Andy,

I think it would be the same, insufficient space for a second toolbar in landscape. To add attachments you have to use the "Go Advanced" on the bottom right to do a fully reply instead of the quick reply.

I honestly don't see the problem as you feel it is with selecting a time in 12 hour clock mode vice 24 HR clock mode. To me it's minor, can you explain further what is the "big deal" for lack of a better way to put it between 12 HR clock and 24 HR clock in selecting the time?
 
Ultimately it is minor. However it would be a huge convenience to be able to enter directly as my company utilizes times for OOOI. Even more important I believe though is the concern for accuracy. What good are our logbooks if they are not accurate? The whole benefit of all the auto-calculate and auto-fill features you have implemented in the pc program as well as the app is to increase the convenience of the user experience and more importantly reduce or eliminate human error (by far the greatest error in our industry). Time conversion is no different. I'm not the best in the world at mental math, especially in a hurry. A feature I've wanted for a while has been the option to enter times in Zulu but have them converted to local 24 hour format when saved in the logbook (the aircraft I fly outputs OOOI in Zulu but I prefer local because flights after 2400 Zulu appear to have taken place on the next day even though it is 8pm local. I would think this would cause issues when calculating 30 in 7 limits as well but that's a different discussion.) so overall, my ultimate goal would be as I've described here, however for now I can handle a single conversion from Zulu to local 24 hour which I've been doing for a while on the pc. As it is on the app Now I need to convert fromzulu to local and then to 12 hour. Not impossible and not a 'big deal' however it IS error prone, especially when going across time zones and is further complicated when you're 10 or 12 hours into your duty day. At that point, less conversion is better!

So yes, minor, but I'd rather have it changed and would think it would be minor to implement as well but it appears to be more challenging in this case.

Surely I'm not the only one with this perspective...
 
Neal:

Last night "out on the town" I tinkered with going in and out of airplane mode, and duplicated the crash situation.
I'm glad you were able to reproduce the crash - well, not glad you got the crash, but glad you could reproduce it to make troubleshooting a bit easier for you! To (hopefully) makes things even easier I've attached a .zip file containing all of my crash logs. Of course, I imagine only the ones dated July 29th and later are related to this latest problem - but you never know, so I've included some earlier ones as well.

Fortunately in 1.0.4 these types of issues will only display a message as a notification and not crash the app.
This is a really slick feature. Is this something you wrote into the code yourself, or a new feature of iOS 4?

...then get back out their golfing and have fun...
Glad to see your priorities are in the right place! ;)


Andy:

I have the same problem with saveRecent error.
Glad to hear it. Again, not that you're getting the error, but (a) good to know I'm not crazy, and (b) with more of us experiencing the error hopefully we can pinpoint the cause.

i'm entering a route but not an "ident" (for the foreigners;))
Hehe ... thanks, we appreciate it! ;)

how about have the first blank line below the entered flights be tappable for "create new flight"?
I really like this idea. Or, how about the 'pull-down-and-release' method they used on Flogger for the live entry?


Have a great weekend!

Cheers,

Chris

:cool:
 
Hello Chris,

I downloaded your crash logs and removed the attachment so nothing is shared that shouldn't be. In the future you can e-mail it to support@nc-software.com if desired.

No, not an iOS 4 feature, the error traps is something I wrote.

Thanks again to both you and Andy for the feedback and ideas.
 
Chris,

I reviewed the crash logs and they tell me exactly as I suspected, the resume situation such as with airplane mode is simply a time out in trying to reach the cloud sync. One thing I did, and probably shouldn't have, was removed the built in time outs for syncing. Previously I set the values so if it couldn't reach the sync system in a few seconds it backed out from trying, bad idea! :) It's already been added back with my tweaks this morning and I already have been unable to repeat the airplane mode issue.

With that said, if you use airplane mode try turning off Sync on Start in the Settings/Sync area and this should alleviate this issue until 1.0.5 is released. I will consider this issue like the SaveRecent issue as minor and something we can overcome with a work-around until some other items are added to 1.0.5. I have a lot of ideas I want to try and get into 1.0.5 so these two issues you raised won't prevent me from making 1.0.5 just a bug fix but allow me the opportunity to add more items from the outstanding feedback from you and Andy and the e-mail suggestions.

Thanks again for the attachment as it confirmed my suspicion and it is a minor issue which has already been fixed.

Loving this app! It really pays off when you have good clean code behind it! So easy to work with! :)
 
Andy:

A feature I've wanted for a while has been the option to enter times in Zulu but have them converted to local 24 hour format when saved in the logbook (the aircraft I fly outputs OOOI in Zulu but I prefer local because flights after 2400 Zulu appear to have taken place on the next day even though it is 8pm local. I would think this would cause issues when calculating 30 in 7 limits as well but that's a different discussion.)
I can fully relate to the 'helmet fire' you get at the end of a long day trying to make UTC-to-local time conversions. You should try flying into Newfoundland, where their timezone is 1/2 hour off! :eek2: It is for this very reason that I (personally) prefer using UTC times for recording purposes, simply to have an across-the-board standard. The recording systems on board our aircraft also record times in UTC, and that is also how the company wants us to log them. Our schedules, however, are posted in local times since that is what customers can more easily relate to.

If you record times as local in your logbook, then you will have the same helmet fire trying to decipher and convert past entries in your logbook - if after a 12 hour day is bad enough, try a year later! Another major problem would be the automatic calculation of duration. If you blast off out of JFK at 1700 EST and touchdown in SFO at 1900 PST, your duration would be calculated to be 2 hours when in actual fact it is 5 hours.

In other words, I'm sort of an advocate of sticking with the UTC across-the-board format. The new 'use GMT' option made this way easier for me. But I realize that this is only my situation, and many would have a different argument.


Neal:

I downloaded your crash logs and removed the attachment so nothing is shared that shouldn't be.
Thanks for doing this, Neal. I wasn't too concerned, as I didn't think crash logs had any personally identifying information. But better to be safe, I guess.

In the future you can e-mail it to support@nc-software.com if desired.
Thanks!

No, not an iOS 4 feature, the error traps is something I wrote.
WOW - what an innovative idea! I wish more developers would do this - makes life easier for everyone involved! Great work.


Cheers,

Chris

:cool:
 
Hi Neal,

I reviewed the crash logs and they tell me exactly as I suspected, the resume situation such as with airplane mode is simply a time out in trying to reach the cloud sync.
That's great news, Neal. One question, though: what would cause such a time out?

Another (somewhat) related question/comment I have is that I still never seem to see the sync notification you said you added back in in the last version. What I have noticed is that I see the splash screen far more often even when returning to the app just from being backgrounded. Does this serve as the sync indicator? I seem to remember from an earlier version a pop-up of some sort.

I will consider this issue like the SaveRecent issue as minor and something we can overcome with a work-around until some other items are added to 1.0.5.
Absolutely - this is certainly not a crippling issue. As always, I'm looking forward to whatever new features you have up your sleeve. ;)

Loving this app!
Me too!!!! :D:D:D

Cheers,

Chris

:cool:
 
A feature I've wanted for a while has been the option to enter times in Zulu but have them converted to local 24 hour format when saved in the logbook (the aircraft I fly outputs OOOI in Zulu but I prefer local because flights after 2400 Zulu appear to have taken place on the next day even though it is 8pm local. I would think this would cause issues when calculating 30 in 7 limits as well but that's a different discussion.) so overall, my ultimate goal would be as I've described here, however for now I can handle a single conversion from Zulu to local 24 hour which I've been doing for a while on the pc. As it is on the app Now I need to convert fromzulu to local and then to 12 hour. Not impossible and not a 'big deal' however it IS error prone, especially when going across time zones and is further complicated when you're 10 or 12 hours into your duty day. At that point, less conversion is better!

Andy,

To be honest, I do not see implementing this feature. It brings us right back to the problem 1.0.4 fixed which is the time zone situation for pilots that start the app and end up in different time zones, etc. The conversion from the GMT input would not know what time zone to convert it back to. We don't use an airport database presently to make route input more flexible, easier, and faster, but that would be the only way to handle this is via the airport associated with your times to determine the time zone and conversion, then of course daylight savings time would have to come into play as well. This app is designed to be simple and fast. I suggest for now just keeping everything in UTC (GMT) which the only purpose of this anyways is a Duration calc, the OOOI times serve no other purpose.
 
Hello Chris,

That's great news, Neal. One question, though: what would cause such a time out?

When you're in airplane mode AND there is no WiFi connection, i.e. NO connection to the Internet (cloud) the sync service has a default timeout of 30 seconds but Apple shuts down the app from a resume in about 15 seconds. So in the scenario you described, i.e. starting Logbook Pro without Internet connectivity the app will be shut down by the OS. The default timeouts are 3 seconds to check for an internet connection and 5 seconds for syncing. It will never get past 3 seconds if there is no connection in the first place as it will fail the check for the Internet. I commented out the code lines for the reduced timeouts as I didn't think Apple's shutdown would be that fast but so be it, and it's fixed.

Another (somewhat) related question/comment I have is that I still never seem to see the sync notification you said you added back in in the last version. What I have noticed is that I see the splash screen far more often even when returning to the app just from being backgrounded. Does this serve as the sync indicator? I seem to remember from an earlier version a pop-up of some sort.

I was wondering if you'd catch this! Initially I had a different type of feedback system in about the 1.0.2 time frame. It took a surprisingly long time to show the "Synchronizing" dialog when the app was launched so I removed it in 1.0.3, it wasn't an issue on the iPad side probably because it's a more powerful system. I ended up creating my own feedback system and it doesn't require the resources the other system needed so it essentially shows instantly now. Long story longer...I had the code set not to show the spinner (blue rectangle) when the app was resumed but ONLY when you tapped Sync. So try tapping Sync now and you'll see it appear and also when the app is first launched So now in 1.0.4 you will NOT get sync feedback on resume. You'll also notice the app appears frozen because the syncing is going on for the first 1-2 seconds. I found out after I submitted the update to Apple that my feedback system was much more efficient and does work fine on app resume so it is there now. So when you get 1.0.5 and beyond and you have Sync on Start set then you will see the spinner.

Whew, that was long winded...sorry, but at least you got the full explanation. Short version: enhanced in 1.0.5. :)
 
Thanks for the quick replies, Neal!

When you're in airplane mode AND there is no WiFi connection, i.e. NO connection to the Internet (cloud) the sync service has a default timeout of 30 seconds but Apple shuts down the app from a resume in about 15 seconds. So in the scenario you described, i.e. starting Logbook Pro without Internet connectivity the app will be shut down by the OS.
Actually, that's not quite how I described it. I am opening Logbook Pro and getting the crash AFTER turning airplane mode back to OFF, with full 3G connectivity. I have never had a crash (that I can recall) when opening the app in airplane mode. The crash always seems to occur when the first sync should be happening after turning airplane mode OFF and resuming the app.

So now in 1.0.4 you will NOT get sync feedback on resume. You'll also notice the app appears frozen because the syncing is going on for the first 1-2 seconds. I found out after I submitted the update to Apple that my feedback system was much more efficient and does work fine on app resume so it is there now. So when you get 1.0.5 and beyond and you have Sync on Start set then you will see the spinner.
Very interesting. I'm glad the spinner is back in v1.0.5. The fact the app appears frozen during the sync, as you describe above, is the whole reason I suggested the feedback in the first place. And, since with multi-tasking, most syncs would happen in a resume situation and not a fresh start situation, I think it is very important to have that there.

Thanks for the explanation!

Cheers,

Chris

:cool:
 
- turn 'airplane mode' ON
- open 'new flight' screen
- exit Logbook Pro
- turn 'airplane mode' OFF
- resume Logbook Pro

This thread is getting reaaaaaly long...so here's your steps again. From step 1 to 2 (apmode ON and back into Logbook Pro) will cause a sync to trigger because you are resuming the app. When going from Device Settings and then into Logbook Pro triggers the resume, i.e. Sync on Start, and a timeout situation.

apmode to OFF and then resume "could" depending on whether the device has found a connection yet or not. It will go into "searching for service" and then connect.

Just to make sure I'm absolutely fixing the right thing, turn OFF sync on start and see if you can get a crash with the airplane mode switches. I think turning Sync on Start to OFF will fix you for now. You'll sync on exit and manually by tapping Sync if desired.
 
Back
Top