respect_24_hour

This project makes it possible to check whether the device is using 12 or 24 hour time.

Supported Platforms

  • Android API 16+ (4.1+, the minimum version supported by Flutter).
  • iOS 8.0+ (the minimum version supported by Flutter).

Getting Started

There is only one getter which is static and can be called anywhere.

//returns bool indicative of whether the device is using 24-hour time format
await Respect24Hour.get24HourFormat;

Troubleshooting - iOS

Xcode 10, Flutter and Swift sometimes don't play along well.

"Could not find auto-linked library" errors

Example error log:

ld: warning: Could not find auto-linked library 'swiftCoreGraphics'
ld: warning: Could not find auto-linked library 'swiftFoundation'
ld: warning: Could not find auto-linked library 'swiftMetal'
ld: warning: Could not find auto-linked library 'swiftDarwin'
ld: warning: Could not find auto-linked library 'swiftUIKit'
ld: warning: Could not find auto-linked library 'swiftObjectiveC'
ld: warning: Could not find auto-linked library 'swiftCoreFoundation'
ld: warning: Could not find auto-linked library 'swiftDispatch'
ld: warning: Could not find auto-linked library 'swiftCoreMedia'
ld: warning: Could not find auto-linked library 'swiftQuartzCore'
ld: warning: Could not find auto-linked library 'swiftCore'
ld: warning: Could not find auto-linked library 'swiftCoreImage'
ld: warning: Could not find auto-linked library 'swiftCoreAudio'
ld: warning: Could not find auto-linked library 'swiftSwiftOnoneSupport'
Undefined symbols for architecture x86_64:
  "__swift_FORCE_LOAD_$_swiftCoreAudio", referenced from:
      __swift_FORCE_LOAD_$_swiftCoreAudio_$_respect_24_hour in librespect_24_hour.a(SwiftRespect24HourPlugin.o)
     (maybe you meant: __swift_FORCE_LOAD_$_swiftCoreAudio_$_respect_24_hour)
  "__swift_FORCE_LOAD_$_swiftQuartzCore", referenced from:
      __swift_FORCE_LOAD_$_swiftQuartzCore_$_respect_24_hour in librespect_24_hour.a(SwiftRespect24HourPlugin.o)
     (maybe you meant: __swift_FORCE_LOAD_$_swiftQuartzCore_$_respect_24_hour)
  "__swift_FORCE_LOAD_$_swiftMetal", referenced from:
      __swift_FORCE_LOAD_$_swiftMetal_$_respect_24_hour in librespect_24_hour.a(SwiftRespect24HourPlugin.o)
     (maybe you meant: __swift_FORCE_LOAD_$_swiftMetal_$_respect_24_hour)

Why is it happening:

When using swift code in pods without swift code in the app itself, such error might occur.

Solution:

Add a dummy .swift file to your project using XCode and when promted, agree to add a Briding-Header.

"'respect_24_hour/respect_24_hour-Swift.h' file not found" Error

Example error log:

.../.pub-cache/hosted/pub.dartlang.org/respect_24_hour-0.0.1/ios/Classes/Respect24HourPlugin.m:2:9: 'respect_24_hour/respect_24_hour-Swift.h' file not found

Why is it happening:

XCode 10 works differently with swift and objective-c files and sometimes the autogenerated file used for including swift code in objective-c files is referenced without package.

Solution:

Delete the 'respect_24_hour/' part from the error causing line - 'respect_24_hour/respect_24_hour-Swift.h'.
Result: respect_24_hour-Swift.h

Libraries

respect_24_hour

Dart

dart:ui
Built-in types and core primitives for a Flutter application. [...]

Core

dart:async
Support for asynchronous programming, with classes such as Future and Stream. [...]
dart:collection
Classes and utilities that supplement the collection support in dart:core. [...]
dart:convert
Encoders and decoders for converting between different data representations, including JSON and UTF-8. [...]
dart:core
Built-in types, collections, and other core functionality for every Dart program. [...]
dart:developer
Interact with developer tools such as the debugger and inspector. [...]
dart:math
Mathematical constants and functions, plus a random number generator. [...]
dart:typed_data
Lists that efficiently handle fixed sized data (for example, unsigned 8 byte integers) and SIMD numeric types. [...]

VM

dart:io
File, socket, HTTP, and other I/O support for non-web applications. [...]
dart:isolate
Concurrent programming using isolates: independent workers that are similar to threads but don't share memory, communicating only via messages. [...]