InfiniTimeOrg / InfiniLink

The official iOS companion app for InfiniTime
https://apps.apple.com/us/app/infinilink/id1582318814
GNU General Public License v3.0
202 stars 22 forks source link

Error when setting time #31

Closed xan-m closed 3 years ago

xan-m commented 3 years ago

when I try to sync the time with my pinetime using your app, I get an error message telling me it was not able to do so. Having some logs to peruse could help me debug why!

Originally posted by @bhibb in https://github.com/xan-m/Infini-iOS/issues/18#issuecomment-927334741

xan-m commented 3 years ago

I added that error message in response to a crash I saw on TestFlight, but I wasn't able to reproduce the circumstances that led to it. Are you able to reproduce it intentionally, or does it happen sporadically?

bhibb commented 3 years ago

Yes I’m able to reproduce it consistently. All you have to do is turn off the watch, let it reboot, then try to pair with it using your app. The pairing will be successful, but every time I get that error message and the time remains incorrect on my watch. In this state every pairing produces the same error message.

xan-m commented 3 years ago

That is very strange! I have been unable to reproduce this bug so far.

Looking back at the crash report I initially received, it crashed when converting a string to an integer while setting the date. I'm wondering if it's a regional date formatting issue? Would you mind telling me what your region, timezone, and language are set to in iOS? If you'd prefer not to share it here you can DM me on Mastodon (I think I saw that you followed me there recently...), or email me at feedback@emry.me

bhibb commented 3 years ago

Hey no problem! My region is USA, San Diego, CA. My timezone is Pacific Standard Time. My language is English - US.

Yeah, I'm not sure why it happens every time. This is an iPhone 6s Plus, so it's a little long in the tooth.

xan-m commented 3 years ago

My region/language/time zone is the same as yours, and I switched those settings to match the crash report I received from this issue and that didn't work either.

I've been testing this bug on an iPhone 6s (non-plus) and haven't been able to make it happen. I'll keep cracking at it though!

If I made a build with some extra debugging info for this bug specifically and sent you a private link would you be willing to try it out?

bhibb commented 3 years ago

Definitely :D just let me know!

bhibb commented 3 years ago

Also, I just confirmed that this still happens with the latest version of your app. Just to let you know I'm still running 1.5 of Infinitime and have yet to upgrade to 1.6.

bhibb commented 3 years ago

Oh, sorry, last thing that might be relevant (sorry to spam) but this watch has supplanted the default boot manager with the Wasp-OS compatible boot manager. I'm not aware of how to revert that.

xan-m commented 3 years ago

Awesome I’ll get started on that today. I haven’t changed anything to do with that error since 0.8.5 so it makes sense that you’d still be seeing it!

As for the infinitime version, keep me posted when you update to 1.6.0, but there was only one line of code changed between 1.5.0 and 1.6.0 so I doubt that will change the time issue.

The wasp-os boot loader issue is interesting, maybe I’ll try to flash that on my dev unit and see if that changes anything.

No worries on spam too, the more info the better!

xan-m commented 3 years ago

Okay, I've beefed up the debug mode mentioned in #18 and added some logging info in the time setting function.

Here's a link to grab build 4, which has those features enabled. It's restricted to one user for now so let me know if it says it's full.

Make sure you turn debug mode on in the settings before connecting to the watch so that it actually captures the logs. There's a share button at the top of the log pages that will allow you to send the log to me. Feel free to drop the results here, email me, or use any of the other channels listed in the app.

Thanks again for being a guinea pig!

bhibb commented 3 years ago

Hey no problem. I clicked your link and updated to a newer version of the app, but it still said version 3. When I opened it up I don’t see any debugging openings in the Settings tab. Could you resend the link to version 4?

xan-m commented 3 years ago

Huh it goes to (4) when I click it! Maybe you have to be on 3 already to bump to 4?

Here it is again anyway just in case:

https://testflight.apple.com/join/y2ArRePw

bhibb commented 3 years ago

Tried it again and this is what I see when I follow the link: 71606E97-EE47-4DAA-A4E8-D88C7E51C771

xan-m commented 3 years ago

I was able to reproduce on my partner's phone and fixed it by deleting the app from her phone and then clicking the link. Give that a shot?

The link is definitely for build 4 and TestFlight won't let me generate a new link, so we're stuck with this one. Optionally I can send an invite to your email directly if all else fails.

bhibb commented 3 years ago

Thank you that did the trick! I tried the share function but it turned the log into “something…” so here it is! Apologies for just sending screen shots.

C3C8AE6E-A66D-4008-81D3-288B4CC34F29

xan-m commented 3 years ago

That's exactly what I figured was happening! Thank you for your help!

One last question: what version of iOS are you running?

bhibb commented 3 years ago

iOS 14.7.1!

xan-m commented 3 years ago

You should have just received an update for the debug branch that will hopefully fix this!

bhibb commented 3 years ago

You did it! It works now thank you ;) I pulled build 5 and it’s no longer popping up.

xan-m commented 3 years ago

Yesssssss! The date is set correctly too?

That bug was so annoying and I would have never gotten there without your help! Thank you again! I'll merge this change with the main branch and push out an update to everyone.

Thoughts on the debug mode?

bhibb commented 3 years ago

The date is correct yes. I like the debug log because it is an obscure toggle that shouldn’t get in anyone’s way. Breaking it out into three functions was a good idea too.

xan-m commented 3 years ago

Okay cool, I'll continue work on it. Obviously it can be useful!

Marking this issue as closed

xan-m commented 3 years ago

Also please note that this branch will probably not get updates, so make sure to switch back to the main branch using the link in the readme. The current version of the main branch (build 6) includes this fix.