flomio / flomio_drivers_ios Goto Github PK
View Code? Open in Web Editor NEWiOS device drivers for Flomio readers.
Home Page: http://flomio.com/shop/readers
iOS device drivers for Flomio readers.
Home Page: http://flomio.com/shop/readers
Expected:
NDEF encoded URI recognized.
Actual:
NDEF encoded URI not recognized.
Smart posters store the URI + description text inside of a nested NDEF Message. When FJNDEFRecord.getUriFromPayload is called we need to parse the embedded message and look for a record TNF of TNF_ABSOLUTE_URI.
Android implementation: http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/4.1.1_r1/android/nfc/NdefRecord.java#676
Logs:
2013-04-17 16:05:34.673 info Tag UID Received 0x052722049c75d2da2880d1021753709101095501636e6e2e636f6d2f5101065402656e434e4e2c
2013-04-17 16:05:35.163 FloJack Tag Scanned: 0x049c75d2da2880
2013-04-17 16:10:10.661 TNF: 1 Type: 0x5370 Payload: U�cnn.com/Q��T�enCNN
I cannot find this file in the SDK... The integration instructions need a bit more detail.
I also do not see a FloJack group : "... all the files under the FloJack group ..."
Missing Step 7. #import <AudioJack/AudioJack.h>
into your app controller's header file.
After that, you can use ACRAudioJackReader* _reader
but getting:
Undefined symbols for architecture x86_64:
"std::terminate()", referenced from:
___clang_call_terminate in libAudioJack.a(ACRAudioJackReader.o)
___clang_call_terminate in libAudioJack.a(aurio_helper.o)
...
With firmware v0x0B and iOS app v0.07, I haven't been able to successfully write URLs to Mifare Ultralight tags. This process works on the FloBLE OSX app with some tags that must have been formatted differently at some point. I went through all the formatting and writing procedures from Android app like NXP TagWriter and Tagstand Writer and the tags work fine. However, with the FloBLE OSX app only some tags are writable. None are writable with the FloBLE iOS app though. I shot a video to capture the test scenario and variables:
https://www.youtube.com/watch?v=RLzie85t2BU
Also worth mentioning is I witnessed several "Bad CRC" errors when NDEF write instructions were unsuccessful. Like this:
Bad CRC, ignoring current message.
A full dump of the console log from testing here.
Expected:
Actual:
Fix likely involves a simple check of FJNFCService._floJackConnected in FJNFCService.checkIfVolumeLevelMaxAndNotifyDelegate.
Logs:
2013-04-17 21:44:24.265 FloJackExample[9534:4d0f] [info] FJNFCService: Complete message, send to delegate.
2013-04-17 21:44:24.271 FloJackExample[9534:4407] [info ] (FLOMIO_TAG_READ_OP) Tag UID Received 0x051a2204034c02c42981d1010b5501666c6f6d696f2e636f6dd6
2013-04-17 21:44:24.654 FloJackExample[9534:907] [***ERROR***] Volume not max. Level = 0.812500
2013-04-17 21:44:24.689 FloJackExample[9534:907] Current Route: SpeakerAndMicrophone
2013-04-17 21:44:24.685 FloJackExample[9534:4407] FloJack Tag Scanned: 0x04034c02c42981
2013-04-17 21:44:24.694 FloJackExample[9534:4407] TNF: 1 Type: 0x55 Payload: �flomio.com
2013-04-17 21:44:25.985 FloJackExample[9534:907] Current Route: HeadsetInOut
2013-04-17 21:44:26.467 FloJackExample[9534:141b] [info] FJNFCService: Complete message, send to delegate.
2013-04-17 21:44:26.473 FloJackExample[9534:4407] FloJack Status: 1
2013-04-17 21:44:26.477 FloJackExample[9534:4407] [info] FLOMIO_PING_OP
2013-04-17 21:44:26.480 FloJackExample[9534:4407] [info] (TX) FLOMIO_PONG_OP
Need to refactor floJack IOS project into one based on a floBLE IOS name.
At first, it was throwing an error saying FlomioMessageTests.h wasn't found, so I renamed the MessageTests.h file to FlomioMessageTests.h and MessageTests.m to FlomioMessageTests.m.
Now, I'm getting these errors in NFCTagTests.m:
"Use of undeclared identifier 'FJNFCTag'"
"Use of undeclared identifier 'tag'"
Unknown receiver 'tag'; did you mean 'Tag'?
No known class method for selector 'type2ParseMemoryForNdefTLVLocation'
Sent this to the ACS guys:
Hi, I've encountered an issue with the ACR3x AudioJack library. We found with the FloJack that customers required an audible feedback after scanning a tag/card for best user experience. Since the library is closed source, there's no opportunity to claim the Audio service to disable the audiojack and route audio to the speakers after a successful read.
You can review how we did this in our FloJack library here:
https://github.com/flomio/flomio_ios/blob/master/FloJack/FloJack/FJNFCService.mm#L624
/**
Disables FloJack audio line communication and switches route to device speaker.
@return BOOL indicates if execution was successful
*/
- (BOOL)enableDeviceSpeakerPlayback
and here:
https://github.com/flomio/flomio_ios/blob/master/FloJack/FloJack/FJNFCService.mm#L595
/**
Switches route to HeadSetInOut and enabled FloJack audio line communication.
@return BOOL indicates if execution was successful
*/
- (BOOL)disableDeviceSpeakerPlayback
Perhaps you can send this info to your developers to add for the next release.... Seems someone named Godfrey Chung wrote the library.
Add support for OAD (Over the Air Downloads), which is now supported in the FloBLE stack.
Looks like we’d need to do a new version of FJNFCService, which could hopefully maintain a similar interface but work with BLE.
Expected:
NDEF message parsed and URI displayed in text view
Actual:
Uncaught NSRangeException crashes app
013-04-23 17:47:38.513 FloJackExample[8387:110f] [info] FLOMIO_ACK_BAD
2013-04-23 17:47:38.517 FloJackExample[8387:110f] info resendLastMessageSent
2013-04-23 17:47:38.525 FloJackExample[8387:110f] [info] sendMessageToHost begin
2013-04-23 17:47:38.529 FloJackExample[8387:110f] [info] sendMessageToHost item: 0xe
2013-04-23 17:47:38.530 FloJackExample[8387:110f] [info] sendMessageToHost item: 0x4
2013-04-23 17:47:38.555 FloJackExample[8387:110f] [info] sendMessageToHost item: 0x1
2013-04-23 17:47:38.567 FloJackExample[8387:110f] [info] sendMessageToHost item: 0xb
2013-04-23 17:47:38.579 FloJackExample[8387:110f] [info] sendMessageToHost end
2013-04-23 17:47:46.694 FloJackExample[8387:3d07] [info] FJNFCService: Complete message, send to delegate.
2013-04-23 17:47:46.697 FloJackExample[8387:15e7] info Tag UID Received 0x05a422370779c1735752c9bf07f8ffe1101d0f03b9d20caa746578742f782d7643617264424547494e3a56434152440d0a56455253494f4e3a332e300d0a464e3a436f646542726f6b657220436f646542726f6b65720d0a5449544c453a536f66747761726520456e67696e6565720d0a4f52473a436f646542726f6b65722c204c4c430d0a54454c3b545950453d776f726b3a3730332d3835382d303030300d0a4532
2013-04-23 17:47:46.701 FloJackExample[8387:15e7] * Terminating app due to uncaught exception 'NSRangeException', reason: '* -[NSSubrangeData subdataWithRange:]: range {6, 191} exceeds data length 153'
Hi,
flojack is a very sexy project, but when I have testing with the Analyze Instrument Apple Xcode tool I have noting there are memory leaks …
did you project to cleaning your source ?
best regards
The installation description is clearly missing a linker flag "-lc++".
Also discussed at #14
How doe the FlowJack handle authentication, for let's say Mifare chips?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.