Best practices for reporting events within iOS app - ios

I would like to receive communication from my iOS app, reporting some events. For example, when a specific item is not found in the database, I would like to receive a notification so I can go ahead and check why the item is not there.
Now, I use parse.com as backend, one option would be to create a table and add all reporting over there. It just doesn't seem natural do have the client creating objects that have nothing to do with their user's experience. Another option would be to send emails, using Sengrid or similar to company staff, so they can fix the problem.
Anyways, my question is: What are the best practices for communicating events that happen in the app without user's knowledge? And of course, in a way (fast and clean) that will not interfere on user's experience.

If this is purely for crash and error management we use crashlytics. It's very powerful. If not you can setup custom events in Google Analytics. Of you can extend the intent of crashlytics to do more for you.

Related

How to detect if user has turned off mobile data for specific iOS App

I've come across a scenario where I need to know if the user has turned off mobile data for the app I'm developing so I can display a warning saying: "You have turned off mobile data, data will be synced when you connect to wifi". I wanted to be clear that I only need the information about my own app, not others the user has installed.
The problem is, i only have a narrow lead on where to start. I've come across a post saying this is possible, but not how. The answer talks about a "telephony class" which will enable some way of accessing the data about the settings for mobile data of your app. I'm guessing this is a native iOS class.
Link to the article on SO can be found here - link to post
My question is, which class, if there even is one in swift, has such an api, that I can get this information?
I'm new in swift and therefore know little of native classes and permissions.
I can provide more information if needed. This was all I could think of.
PS. I'm not looking for the Reachability class where I can detect WWAN / WIFI connection, unless this has some capabilities I'm not aware of.
Kind regards Chris

How to work with Firebase App Indexing for IOS Apps

i am in the process of making my app with firebase i am pretty much done with that except Firebase App Indexing. I am very exited with this feature because it could help me to increase my app get more traffic from the web but the problem is i really can't able to see how to implement this. According to Firebase Docs i just need to register my app with this pice of code
[[FIRAppIndexing sharedInstance] registerApp:your Apple ID from iTunes Connect];
I have done that but what should i do after that?
1.My app is firebase app that means i don't have any website to host my content except firebase realtime database. Does my content is available for crawlers? if not how can i make available to them?
2.If i can able to show my content in the google search results i don't wanna show all the content and i wanna show just some of my content for example i have a social app for sharing General Knowledge questions, i wanna show just the question like "What is the highest mountain" in the search results and if the user want to see the answer it should take them to my app how can i do that?
3.As per docs i came to know that i need to create univiersal links for my app content to direct users from google search but how shold i do that ? Lets say should i crate universal links when the user create question?? if so how can i do that ??
Thank you very much for the help.
This is not currently possible on iOS using Firebase App Indexing. The situation is slightly different on Android, but that is not applicable to your question.
On iOS, Firebase App Indexing is simply highlighting pages on your website in Google search results that have corresponding content inside your app. This is achieved by piggybacking on Apple's Universal Links standard, and there is no proactive 'crawling' going on inside your app. This means unless you have a corresponding web page for your app with 1:1 content parity, you can't really benefit from Firebase App Indexing on iOS as it comes out-of-the-box.
The best workaround is to generate little 'placeholder pages' for every piece of content in your app, which the sole purpose of opening your app (if it is installed) or redirecting to the App Store (if it is not installed). Ideally you'll need some sort of deferred deep linking system so that users still see the correct content after downloading. Fun fact: this is essentially how HotelTonight operates their entire business model. Unfortunately Firebase's implementation is not mature enough to support this full flow, and Google hasn't quite figured out how to rank app-only content properly yet in search results so you will probably need to pro-actively submit your placeholder pages to them.
Shameless plug: at Branch, we provide all of the above as a free service. You can read more about it here and take a look at the set up docs here.

Parse: One app on parse.com will be accessed by multiple iOS apps. Does it work?

we are about to finish our first app with parse.com. This first app is for the enduser. PushNotifications and everything are working fine.
Now we want to create an app for our admins to manage everything. We want it to be a separate app. Therefore I was wondering: will this be possible? Two apps connecting to one data collection on parse.
Especially regarding the PushNotifications. Admins should also receive a push notification on the new admin app (e.g. new member joins and needs to be activated).
Has anyone ever done something like this?
Or do we need to build the admin part into the main app?
The thing is we will need a third app, which is for business owners to manage their listing on our main app. So the same problem/question will apply then.
Looking forward to your feedback.
Txs!
Yes same Parse app ID can be used by different platforms/apps, that is basic concept of Parse. You can even use it in web, iOS, Android, etc with same parse app. This should not be a problem.
You might need to modify you parse data structure tough to suit your admin app requirement.
Check https://parse.com/docs/ios/guide#roles

iBeacon notification database

I have a question which I have not been able to figure out so I decided to see if I can get some help on here.
I am working on an iBeacons project and I have been able to understand the basic function of iBeacons, setting up UUID'S and major and minor id's to specify exact notifications, but my question is how do I dynamically update information I send out to the users without having to go into the code each time to do this. Do I need to create a database to store all my information I want to push out to users? if so how will this database constantly refresh messages pushed out to users? An example would be lets say if you walk into a store and you get a notification in the shoe section saying there is a 10 percent off, you look at the notification but not too impressed and start to walk out, then you get another notification saying for today only you can get a 25 percent off... The app has to dynamically refresh for this to be possible.
Please help me clarify this
Thank you very much for the help
What you probably want is to store this deal information in a web service so you can update it without changing the app. Your app would need to download the updated deal information from the web service either when it starts up or when it sees an iBeacon.
My company, Radius Networks, offers a tool called Proximity Kit that makes this easy. You can assign arbitrary key/value pairs to iBeacons using a web interface. Then your app downloads them automatically an has access to them whenever you see iBeacons.
In your scenario, they key/values could be something like:
primary_offer_text=10% off all shoes
secondary_offer_text=20% off all shoes

Send an invitation to a list same app

I am pretty new with iOS 5 and I am thinking in writing an app.
I would have a list of people inside the app who has it. Then I would invite them to an event.
I don't need any code right now I just wanted to know the concept behind this.
First, how an app can recognise who has my it installed, so it can show a list of people.
Second, after creating an event with a group of people how can I send an invitation to them.
Thanks
From a very general standpoint, what you need is a back-end server to interact with your app and store user/event info. You can either build your own or try to use a service like Parse.

Resources