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

iOS 9.2.1 Compatibility #52

Merged
merged 161 commits into from
Mar 12, 2016
Merged

iOS 9.2.1 Compatibility #52

merged 161 commits into from
Mar 12, 2016

Conversation

JBA474
Copy link
Contributor

@JBA474 JBA474 commented Mar 10, 2016

Thanks to Kristian @trenskow for a fabulous application and having the stones to open source it for everyone to learn and benefit from. Most devs I know would have walked away when Apple screwed them.
Merged submodule for libairfloat (sorry Kristian I find submodules annoying to work with, I hope you don't mind), updated libz.tbd, disabled bitcode, enabled build only active architecture, strip debug symbols. Works on non-jailbroken iPhone iOS 6s Plus 9.2.1 as the AirPlay target of a 4th gen non-jailbroken Apple TV tvOS 9.1.1. This builds and deploys successfully with a free Apple ID, Apple Developer account not needed for personal devices. You must use at least iOS 9 and Xcode 7.
Did not change build target.
Changed NSArray in AirFloatAppDelegate.m to fix issue #50 - Custom Name Does Not Persist credit to @yfliao.
Changed AVAudioSession to work around crash when switching songs, I believe this resolves issue #38.
Added hack for return iOSDeviceID to allow multiple instances on Airflow on the same network and work around MAC address no longer available in app sandbox credit to @ataibarkai.
Fixed a couple other memory management bugs in settings.c, web request.c and webserver.c, including removing redundant socket_destroy. I believe this was causing the crash when switching from one Netflix episode to the next credit to @faisalmemon.
Changed target name for libairfloat from airfloat to libairfloat.

All ready to put on the App Store, just kidding :)

I believe all of these issues should be retested, verified and closed out after this change is merged.
libAirFloat Issue #6 Memory Management Bugs (at least the specific changes brought up in the issue document)
AirFloat Issue #20 Sound Mutes When Switching Apps Or Turning Off The Screen (I tested and it's working)
AirFloat Issue #23 Background Processing (entitlement change allows this, tested working)
AirFloat Issue #37 Multiple Instances Of AirFloat In One Network (this was broken with app sandboxing, put in work around)
AirFloat Issue #38 AirFloat Connection Silently Fails After Muting Sound For A Few Seconds (I tested and it's working)
AirFloat Issue #45 Run Without Apple Dev Cert (I tested and it's working)
AirFloat Issue #48 Crashes When Getting Audio From Apple TV (I've got an old AppleTV but I only tested against the most recent 4th Gen)
AirFloat Issue #50 Custom Name Does Not Persist (Put in work around, tested and working)
AirFloat Issue #51 Cannot Build On Latest Xcode (I tested and it's working)

trenskow and others added 20 commits July 13, 2013 08:14
…de, build active architecture, strip debug symbols.
…ustom Name Does Not Persist

Changed AVAudioSession to work around crash when switching songs.
Added hack for return iOSDeviceID to allow multiple instances on Airflow on the same network and work around MAC address now longer available in app sandbox.
Fixed a couple other memory management bugs in settings.c, web request.c and webserver.c, including removing redundant socket_destroy.
Changed target name for libairfloat from airfloat to libairfloat.
Remove debug flags.
…low on the same network and work around MAC address now longer available in app sandbox.
@JBA474 JBA474 changed the title iOS 9.2.1 iOS 9.2.1 Compatibility Mar 10, 2016
@trenskow
Copy link
Owner

Hi @JBA474
This is perfect! I have no problem with libairfloat being merged into AirFloat. I'll merge this later today. 👍

@JBA474
Copy link
Contributor Author

JBA474 commented Mar 11, 2016

I was seriously nervous you would think I was a real jerk for undoing the split you made. The separate xcode project for the libairfloat library makes total sense to me and I'm 95% sure I didn't mess anything up. If you could double check the history looks correct on the merged in libairfloat I would appreciate it so you (we) don't loose any of the history when merging my pull request. If you see any problems I'll happily fix it.

Thanks again for all the work you do, this is a great project and I had fun contributing something.

I updated the pull request with the issues I believe can be retested and hopefully closed out.

@trenskow
Copy link
Owner

It's super alright. I am more than happy about the contributions you make! :)
I originally split it because I thought I wanted to port libairfloat to other platforms - but since that has never happened, it really makes no sense having it split. So I'm all for it. Plus people are having a hard time figuring, that they need to fork two to make contributions - which is really a pain for a lot I guess.
Thanks for the good work! Keep 'em coming! 👍 :)

trenskow added a commit that referenced this pull request Mar 12, 2016
iOS 9.2.1 Compatibility
@trenskow trenskow merged commit dd5b531 into trenskow:master Mar 12, 2016
@trenskow
Copy link
Owner

Why haven't you added yourself to the list of contributors?

@JBA474
Copy link
Contributor Author

JBA474 commented Mar 12, 2016

Please add me, it would be an honor. I didn't add myself because it was in my repo and I didn't think about it when I created the pr. Rookie mistake, forgive me please.

@vrudikov
Copy link

I wanted to port libairfloat to other platforms

Maybe it's a good idea and multi-platform libairfloat should takes it's own place at https://github.com/trenskow/libairfloat

@trenskow
Copy link
Owner

@vrudikov I agree. It would be the best scenario, but as of now there is currently no plans of it getting ported to other platforms. I have, though, tried to structure it, so it would be relatively easy. For Linux it needs to get another audio_output.c implementation for Linux APIs. The same goes for Windows except there stuff like threading needs to be ported too.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants