Facebook iOS SDK: ATS exception - facebook

Question about iOS 10 ATS. From 2017 Apple will not accept any exceptions anymore to ATS unless there is a very good reason. Based on a post on StackOverflow (graph.facebook.com - Transport security block) I added some exceptions for Facebook. Is this still necessary or is it save to remove these exceptions from now on?

Per Facebook's iOS SDK release notes, it does not require whitelisting as of v4.10.0 (February 10th, 2016).
https://developers.facebook.com/docs/ios/change-log-4x
The Facebook Audience Network SDK is also 100% compatible, due to its use of SFSafariViewController:
https://developers.facebook.com/docs/audience-network/ios/ats
Hope this helps!

Related

Update Facebook SDK issue

I use Facebook SDK login feature. In console written
Your Facebook SDK is out of date. We recommend upgrading to the latest Version 4.37.0, to ensure your app's performance is not affected and to take advantage of our newest features!
I updated SDK pods to 4.44.1, but this warning still there. Anybody can help me, what's wrong?
P.S. I've tried to delete pods and manually installed SDK from Facebook developer site, but it did not help
I could reproduce the same issue on FBSDKLoginKit versions 4.38.0 to 4.44.1.
It does not affect the behavior of the SDK, you can safely ignore this log.
As discussed on Github :
Facebook SDK for iOS started to send an improper User-Agent header
using a wrong format FBiOSSDK.5.x.x instead of a traditional one
FBiOSSDK/5.x.x with a slash; I've discovered this by capturing the log
message and following the stack trace up to the request data.
This needs to be fixed by the Facebook iOS SDK team.
Edit: as the User-agent composing point in the SDK looks untouched for
the last 4 years, I suspect it's some kind of API change which broke
support for the non-standard User agent format SDK uses an only
accepts User-agents with a / slash. Thus an API error. Reported and
waiting for further steps from FB devs.
Edit 2: submitted for fixing; should flawlessly resolve this issue
with some future Facebook API fix.
re "Your Facebook SDK is out of date. We recommend upgrading to the latest Version 4.37.0, to ensure your app's performance is not affected and to take advantage of our newest features!"
Well I get the same log in my swift app after updating Facebook SDK via pods
April 13, 2019.
I recommend you add the two lines of swift code in viewDidLoad to see what version you have.
let fbSDKVersion = FBSDKSettings.sdkVersion()
print ("viewDidLoad- FBSDKVersion: \(fbSDKVersion ?? "0.0")")
My console log shows FBSDKVersion: 4.44.1.
which makes the Version 4.37.0 message suspicious.

iPhone App Rejected By Apple saying analytics used

One of my iphone app rejected by apple. Here is reason from resolution center.
We found that your app uses analytics software to collect and send
device data to a third party, which is not in compliance with the iOS
Developer Program License Agreement.
3.3.9 You and Your Applications may not collect user or device data without prior user consent, and then only to provide a service or
function that is directly relevant to the use of the Application, or
to serve advertising. You may not use analytics software in Your
Application to collect and send device data to a third party.
Specifically, your application is transmitting the user's MAC address
without their prior consent. It would be appropriate to either remove
this behavior from your application or obtain the user's consent."
Not used any analytics sdk. Only 3rd party sdk used are - Chartboost, Revmob, facebook-ios-sdk, Nextpeer. How can I resolve this problem? how can find which sdk has problem ?
I got reply from apple for same problem. Apple indicated its nextpeer multiplayer sdk issue. User device info is collected in the game. Easy fix is to indicate it in EULA.
See these screenshot.
How are you? This issue most likely wasn't caused by us here at Nextpeer but I will happily look into this for you on our end. If you could please email me (alexander#nextpeer.com) with what SDK version you used during this rejection and your bundle ID, I will check it out for you.
Look forward to hearing back from you.
Nextpeer solved this issue in the 1.5.2 release of the SDK. There is no longer any need to make an addition to the EULA.
How do I know? Because I emailed alexmussafi and asked him :) But he's not found time to update the answer and I wanted to save anyone else the trouble.

Concrete info on iOS app upgrade process

Can someone provide concrete info on how the app upgrade process works on iOS as far as the developer is concerned? I've been rummaging through Stackoverflow only to find hand-waving explanations and no links to official documentation. Google search results only led to Cisco's IOS and the end-user upgrade process. I'd like to know the following:
How does the App Store know when you've provided a new version? Do I have to implement something in my app, which the App Store pings? Or do I set things up stuff through the Apple Developer website? I've been waiting 2 months for developer approval and have no idea what's going on behind those doors because I get access-denied messages when trying to read official articles.
Is there any Objective-C code I need to write for an upgrade to be possible? Any plist I need to edit?
How is payment affected when version 1 of the app is free, then version 2 is paid or version 1 is paid and version 2 changes its price.
Does Apple allow me to do forced upgrades? All the answers on Stackoverflow have been, "I think this is bad business logic" or "I think Apple forbids this, but I don't have the official documentation to prove it." At a certain point, very old versions will be too time consuming to support. You don't see Microsoft still supporting Windows 95, do you?
You just submit the new version to Apple. When it's approved, it will appear in the App Store.
Same as above, Apple pretty much does it all for you.
If you transition from free to paid, everyone that has downloaded the app for free will not have to pay to upgrade to the paid version.
IIRC you cannot force users to upgrade, but you can display a notification within the app to alert users that an update is available. To implement this, I would just have the app request a file on your server that tells the app what the current version number is. You do not need to support users on old version, if they have problems with an old version, it's fine to tell them to upgrade.

are Runtime Revolution (RunRev) aka LiveCode based apps now accepted in iPhone marketplace?

on their website they have "announcements" made at various times saying that it is either prohibited or allowed. The latest announcement, as of September 2010, seems to say that it is allowed, but then maybe there are some more that I haven't located prohibiting it.
So what is the final truth of the matter now? Does Apple marketplace accept RunRev stuff or not?
The latest announcement is correct, and Apple is permitting apps built with [Livecode/Rev/whatever we're calling it this year] in the iOS App Store. The first one, I think, was Sheep Herder, but there are others.
Apple had initially said this was OK, then changed its mind during the Great Steve Versus Flash Incident of 2010. (Rev was collateral damage, along with all other non-Apple development platforms). Then it changed its mind back. So the situation changed several times before it stabilized, which is why the Rev blog and forum archives have different announcements at different times.
As a further development, LiveCode iOS apps built with the forthcoming open source licensed LiveCode will not be allowed in the App Store because of licensing issues. Apps developed with the commercial license (paid) LiveCode will still be accepted.
There are very many more than just Sheep Herder in the app store - I ran a survey a bit over a year ago (November 2011) and some 40 people sent me appstore links to their apps.
You can see a bunch of stuff-built-with Livecode, including a number of apps, here:
http://livecode1001.blogspot.co.uk/

Does new iPhone developer agreement pretty much kill CS5's feature to export to iPhone app?

Will CS5's Packager for iPhone still be an option when CS5 comes out? Or, will any apps submitted to the App Store be denied because of the new restriction that the app has to be written in Objective-C, C, C++, and/or AppleScript(?)?
The second answer is correct: such applications will be denied. Indeed, there has been ample speculation that the very purpose of the new developer agreement is to stop Packager's spreading, because Apple really wants to limit iPhone apps to native ones.
The answer to this question has changed
Special Update: September 9, 2010
Appleā€™s recent announcement that it has lifted restrictions on its third-party developer guidelines has direct implications for the Packager for iPhone. The feature is available for developers to use today and Adobe will now resume development work on this feature for future releases.
http://labs.adobe.com/technologies/packagerforiphone/