Can we take over the air backup of Applications, Call Log, SMS, MMS, Bookmarks, Alarms, Dictionary on an iPhone? - ios

My app need to take backup of user's iPhone's almost entire data to iCloud.
Can we access the call log, SMS, MMS etc. databases of iPhone just as iCloud does internally while backing up programmatically?
Is there some means to give user option list for data he wants to backup to iCloud in our app and backup only that data instead of all data programmatically?
Thanks

Assuming that you are referring to a non-jail broken device then in a word, no. An app cannot access data outside of its own sandbox

Apple can't allow to access and change SMS and log associated database. If you have jailbreak iPhone then you can access database using following path.
/var/mobile/Library/SMS/sms.db
For development level you can access it but your application wan't get approve from iTune store.

It is not possible to get SMS/Call Log/MMS detail.
Your application only access those data which can be supplies by Apple's public API.
Your application can not access data outside of Sandbox other than public API.
Yes, if your device is jail-broken and you can use hack like direct url to database.
But if you do so your application will never approve by App Store.
Please read App Review Guidelines

Related

Is it possible to take all backed up data without jailbreak from iCloud (public,shared,private) by any app/tool, provided with iCloud credentials?

I am trying to build a mobile monitoring tool/app for iOS without Jailbreak. The only possible way to perfectly access all installed app's content is through iCloudKit.
Also I found Apple's MDM come a little close to this for BYOD devices but yet accessing individual application's data is not possible.
During all this process, I came across some website fonemonitor and phonemonitor (with and without) who claim to do the same without Jail Break.
So here is my question is it possible to take any application's data if we get access to the users iCloud account? Also, are all public, private and shared data accessible via iCloudKit? As the documentation clearly states private data is untouched.
How does app monitoring work for any iOS Devices through these websites. Any lead would actually help!

Is it possible for an app to obtain the information about how long the user uses another app?

In iOS, is it possible for an app to get the information about how long the user uses another app?
In iOS each app runs in its own sandbox and cannot see data from other apps, even apps from the same publisher. An app can access special shared data, like photos from the album or contact data, but it is not possible for an app to directly access information like you have mentioned.
No, there isn't. There is no way to fetch data from another app, this is part of the App Sandboxing principle.

Is it possible to access scores of an iOS game application within other iOS application?

I want to access score of user 'A' that he/she secure in Game_Application_1 within Game_Application_2 when user 'B' playing Game_Application_2.
Assuming user A given permission to access thier score.
Both Application developed by different developer.
Please let me know it is possible or not and if possible then how?
Thank you.
This totally depends, if you developing both app then yes. Storing the scores in the keychain can make it accessible to both app.
If you are you are not the developer of both apps then probably no, unless you have access to some kind of API that could tell you the score. Since you can not access data from other app the developers of the other should provide an API to allow you access the score. This can be web based of even using an App URL Scheme.
If both apps are yours you can easily use iCloud's key-value Store to share information.
See Apple's Key-Value Data in iCloud.
See NSHipster's iCloud article.
In ios application you can't access data from out side the application bundle. If you want any information or data from out side the application bundle then you should use API (web services) which contain those information.

Can I do an app like Find my iphone in iOS?

I want to create an app which has the following features.
Track friends / family members location
Locate/track the stolen device location
Lock the device, delete the device datas by using desktop or by SMS.
Most of the above features are provided by Apple's "Find my iPhone" app. But I just want to know whether is it possible to create such an app.
From my understanding, Apple wont let the developers to use private API's and they wont allow to erase datas (like Messages, Calls details) remotely.
Please suggest me some ideas.
If you create any app which directly competes with any of the apples build app will be rejected by appstore.. But most of the above things you can do with private api's and with the help of a web service..
It wasn't possible prior to iOS7. App was not able to respond to any remote calls. There is a new API which "can" be used to solve similar things: http://mobile.tutsplus.com/tutorials/iphone/ios-7-sdk-mutlitasking-enhancements/ or http://www.objc.io/issue-5/multitasking.html (Remote notifications). You may be able to track your friends or stolen device, but not to lock or erase it.
There is a way to remotely erase the iPhone without Apple's Find My iPhone - via Exchange account. There are some open source implementations of MS Exchange, so there may be a chance to make a service which would be able to wipe the device. But even when you make that service, there will be a need to add the "exchange account" into the iDevice. I am not aware of any function which can do so programmatically.
Anyway - You can do an app which is similar to Apple's apps, but it must be somehow different. It must provide some special content or functionality, otherwise it will be rejected.

iCloud and a Web Application

I have an iOS app that lets the user manager recipes. I would also like them to be able to manage the same recipes on their iPad and Mac. It seems that iCloud would allow me to do exactly that.
However, if I want to also build a web application that provides the same functionality, am I right in thinking I need my own non-iCloud solution? Is there any iCloud API that lets a user log in to their apple account and access the data added in the iOS/OS X applications?
If I want to allow web access to the data, am I forced to write my own data service and syncing process? Or are there some ways to at least 'connect' the iCloud data to my own user accounts?
I think "native" integration via a web application is impossible:
iPhone and Webapp sync through iCloud ??
There is actually an iCloud web interface by Apple, but it just has their own apps (contacts, calendar, etc).

Resources