Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crashes on start (iPod Touch with iOS 15.2) #215

Closed
belinsky874 opened this issue Jan 7, 2022 · 14 comments
Closed

Crashes on start (iPod Touch with iOS 15.2) #215

belinsky874 opened this issue Jan 7, 2022 · 14 comments
Assignees
Labels
bug Something isn't working

Comments

@belinsky874
Copy link

belinsky874 commented Jan 7, 2022

Description
The Keepassium app briefly shows the splash screen with its logo before crashing back to the home screen.

How to reproduce
Steps to reproduce the behavior:

  1. Download the Keepassium app from the App Store
  2. Tap on the Keepassium app at the home screen
  3. Watch the splash screen momentarily appear before the app crashes back to the home screen.

Expected behavior
The app will launch normally as it would have on other iOS-based platforms (e.g. iPhone) without crashing.

Environment:

  • Device: iPod Touch (latest model as of Dec. 2021)
  • OS: iOS15.2
  • App Version: 1.30 (as listed in App Store)

Additional context

  • This issue does not seem to occur on iPhone models with the same iOS & app versions.
  • Removing and then reinstalling the app has already been attempted and did not result in success
  • Is it possible that something related to the lack of biometric authentication for iPod Touch devices may have caused the error (just a hunch)?
@belinsky874 belinsky874 added the bug Something isn't working label Jan 7, 2022
@belinsky874 belinsky874 changed the title Crashes on start (latest iPod Touch as of Dec. 2021, running iOS 15.2) Crashes on start (latest iPod Touch as of Dec. 2021, running Keepassium 1.30 on iOS 15.2) Jan 7, 2022
@keepassium
Copy link
Owner

keepassium commented Jan 7, 2022

This looks like a breaking change in iPod release of iOS 15.2 — it is missing the NFC library. Here's a crash log I received from another user (thanks, J):

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note:  EXC_CORPSE_NOTIFY
Termination Reason: DYLD; [1]
Library not loaded: /System/Library/Frameworks/CoreNFC.framework/CoreNFC
Referenced from: /private/var/containers/Bundle/Application/…/KeePassium.app/KeePassium
Reason: tried: '/System/Library/Frameworks/CoreNFC.framework/CoreNFC' (no such file)
(terminated at launch; ignore backtrace)

In App Store stats, I see a couple of iPod Touch devices with iOS 15.1, but none with 15.2. So the library was there before (even though iPod Touch does not have NFC hardware).

Try to install some NFC-based apps and see if they launch. Normally they should start and complain there is no NFC hardware. Chances are, they will crash on start…

@keepassium
Copy link
Owner

I have reported it to Apple: http://www.openradar.me/FB9836080

@keepassium keepassium changed the title Crashes on start (latest iPod Touch as of Dec. 2021, running Keepassium 1.30 on iOS 15.2) Crashes on start (iPod Touch with iOS 15.2) Jan 7, 2022
@belinsky874
Copy link
Author

I have tried downloading NFC app and it crashed in a similar manner. Splash screen for about a second before crash to home screen.

@keepassium
Copy link
Owner

I have tried downloading NFC app and it crashed in a similar manner. Splash screen for about a second before crash to home screen.

Feel free to report this to Apple, crashing NFC apps is certainly their fault.
https://feedbackassistant.apple.com/
https://www.apple.com/feedback/ipodtouch.html

@ravenclaw900
Copy link

This doesn't seem to be limited to iOS 15.2, I'm having the same problem on 14.7.1. (Yes, I know it's Apple's bug, just wanted to add this)

@keepassium
Copy link
Owner

@ravenclaw900 , is it also because of missing CoreNFC for you?

(I have just checked App Store stats. Oddly enough, there is non-zero usage on iPod devices with both 14.7 and 15.2. Which is puzzling…)

@ixs
Copy link

ixs commented Jan 28, 2022

Same problem on iPod Touch running 15.2. App crashes on startup and the log says "no such file" for CoreNFC.
A different iPod Touch on 12.4 runs fine of course.

I'd assume that the non-zero usage on 15.2 might be a metric error on the App Store side?

@ravenclaw900
Copy link

Sorry, haven't done much iOS development, how would I get the logs?

@ixs
Copy link

ixs commented Jan 28, 2022

@ravenclaw900 You can open the Settings app, navigate to Privacy > Analytics > Analytics Data and find all your logs there.

Scroll down a bit, the Keypassium logs are there...

@ravenclaw900
Copy link

Yep, it is.

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note:  EXC_CORPSE_NOTIFY
Termination Description: DYLD, dyld: Using shared cache: 6B453AD2-F7F2-3E3A-B64F-31B0A1E995D7 | dependent dylib '/System/Library/Frameworks/CoreNFC.framework/CoreNFC' not found for '/private/var/containers/Bundle/Application/CA3C176D-C526-4531-AC9C-B8873CEA7E8F/KeePassium.app/KeePassium', tried but didn't find: '/System/Library/Frameworks/CoreNFC.framework/CoreNFC'

@ixs
Copy link

ixs commented Jan 31, 2022

For what's it worth, I checked a few more NFC enabled apps. Some crash, some don't.

Looks like tools like the Yubikey Authenticator check if CoreNFC is available and do not load it/expose NFC functionality and thus no crash. Maybe this would be a good way forward for KeePassium as well?

@keepassium
Copy link
Owner

There is a related issue in YubiKit's repo (Yubico/yubikit-ios#80); the proposed solution is to mark CoreNFC as a weakly-linked/optional dependency. Oddly enough, this is exactly what I did in December, without much effect.

I guess it's time to update to the latest YubiKit version. The one in KeePassium is from 2019 — because "don't fix what is not broken". Well, it is now :)

@keepassium
Copy link
Owner

This should be fixed now (hopefully).
Please give the beta version a try and let me know how it goes. Thanks!

@keepassium keepassium self-assigned this Feb 9, 2022
@keepassium
Copy link
Owner

Definitely fixed by iOS 15.4.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants