MFMessageComposeViewController use for charity donation through SMS - ios

I faced App Store rejection recently based on the following review guideline- "The collection of donations must be done via a web site in Safari or an SMS".
I was opening the PayPal link in a web browser control instead of the native Safari app which I have corrected now. But my app also has an option to donate through SMS where I have used MFMessageComposeViewController.
Will it be approved by App Store as I am using MFMessageComposeViewController instead of redirecting user to the native SMS app?
As per my understanding MFMessageComposeViewController is also a safe way and can not be modified once presented. Please let me know what do you think about this problem and share you experiences. I dont want to face the rejection again.

Related

IOS Deeplinking- Pass msg from email to your app

Existing user of the app will send email to other user.
Other user may have app installed or not installed on their device.
The email will contain some token. Now I want to pass that token to my app. I have read that by deep-linking, its possible. But how will I handle the case when other user have not installed my app yet in their IOS device.
Any help is appreciated.
What you're describing is called Deferred Deep Linking (Deep Linking refers to using a link to open your app, even directly to a specific piece of content, and Deferred means that it works even if the app isn't installed first).
Unfortunately there's no native way to accomplish this yet on either iOS or Android. URL schemes don't work, because they always fail if the app isn't installed. Apple's new Universal Links in iOS 9 get closer, but you'd still have to handle redirecting the user from your website to the App Store
A free service like Branch.io (full disclosure: they're so awesome I work with them) can handle all of this for you though. Here's the docs page covering exactly how to create email links like you described: https://docs.branch.io/pages/emails/email-partners-list/

Facebook iOS invite doesn't reach the invitee

I'm using FBSDKAppInviteContent to invite people to my app. I'm able to go through the wizard (after finally resolving an error about my app link which was incorrect, now it's not) and the invite was sent. No hiccups, and the delegate responds with {didComplete:1}.
However.. the notification doesn't reach the persons that I want to invite! I have verified:
My app is Live
My app has a valid iPhone Store ID
The app link opens the app
What have I missed?
I finally solved it with the help from the Facebook Developer Community.
The notification are only sent to the same platform your application is serving. If you have set it to iOS, the user who recieves the invitation will only be noitified on his iOS mobile, not on his Android, nor in the browser, desktop or mobile.
Hope that helps another poor sole!

How to receive an email alert if particular event occur in iOS app

We have multiple iOS apps live in Apple App Store. We want to receive email notification as soon as any critical event occur in our app. We are using Crashlytics SDK and it notifies us whenever the app crashes but there are other scenarios where we want to receive email notifications.
The only way to achieve this is making API call & from backend you can get email for particular event. Its because Apple doesn't allow to send email without opening the default Mail Picker.
Other options is, Integrate any third party analytics & using which you can do coding for registering the event. Then you will get that event registered at backend for your review.
Awesome third party analytics, Google Analytics, Flurry, MixPanel
Hope it helps.
Till now the best SDKs I've used are NewRelic & Segment both are awesome & different !! You should surely check them once. Easy to integrate and will show you everything you need from your app. This is just from my personal experience.

Exchange data between iOS apps

I know about x-callback-url, and how it's possible to e.g. send a string to an app in iOS.
But is it possible to do this the other way around, e.g is it possible for an iOS app to fetch the song currently playing in Music.app? Can an app fetch a message with a specific caller ID from Messages.app?
I believe, you need to have access to their API/backend to do that. Talking directly to another iOS app is not possible.
No, I'm not a crook ;) I want my app to read the content of an SMS that my gateway has sent, for device authorization.
register a scheme for your app. add a link with that scheme in your sms, with the registration code as uri-path. by clicking that should open your app and you can process the uri.

Will an iOS app that only opens a UIWebView and uses push notification get rejected from apple?

I am developing an application that does exactly 2 things.
1) Opens a UIWebView
2) Uses push notification
I am opening a UIWebView where i load an external URL , and there the user can subscribe to various kinds of events. After he subscribes he can get push notifications about them.
I am asking because some people told me that their apps got rejected when they were just loading an external URL , because apple said it could better be a web page and not an iOS app.
But in my case where i use push notifications? Does it count differently?
The reason why WebView only apps are beeng rejected is because they dont use any of the features that the framework is offering. I got in an application that had only one view for log in, and after log in, the response was URL from server that I was showing in WebView.
You will never know unless you try, but I think it will get in.
I have successfully submitted 3 apps which are all WebViews but with Push Notification functionality. As long as you have Push Notifications in your app you will meet the guidelines of having framework dependant features in your app rather than just being a simple WebView in a mobile app.
"Your app did not include iOS features. App Store apps should use native iOS buttons and include iOS features other than just web views, push notifications, or sharing."
source: Apple rejecting Ionic apps, date: Jan, 2019
“Your app provides a limited user experience as it is not sufficiently different from a mobile browsing experience. Specifically, we notice that most of the app content links out to Safari. As such, the experience it provides is similar to the general experience of using Safari. Including iOS features such as push notifications, Core Location, and sharing do not provide a robust enough experience to be appropriate for the App Store. … the App Store does not accept or distribute web apps.”
source: App Store Rejection 4.2 - Design: Minimum Functionality, date: Dec 2020, But seems it was resolved.
Conclusion: YMMV = Your Mileage May Vary.

Resources