"Restore from Backup" iCloud and Ad-Hoc Apps - objective-c

I have posted this on the Apple support site but just seeing whether anyone can be of benefit here. We have a business iPad app which has been deployed to our users using the ad-hoc distribution method for trial purposes.
Their iPads are backed up using the iCloud automatic method and from what I gather our ad-hoc app (and data) is backed up using this method. Recently a user has deleted the app.
As part of the "Restore from Backup" process, all the AppStore apps are downloaded and installed as per normal, but with the ad-hoc apps they arnt restored at all. It just shows "Waiting ... and then Installing ..." and then it disappears. Im guessing its related to the fact the iPad cant redownloaded an ad-hoc app (it doesnt know where it came from), but how do we update the ad-hoc app on that device after a iPad Restore is done ?
Is there any way to get back the ad-hoc app and its data ?
Thanks for any advice.

Related

What happens to a published app in the App Store if you cancel you Indie Seat with Appcelerator?

I published an app to the App Store using Titanium Studio in 2013. I have recently found a bug in the code that I want to fix and publish.
I logged into Appcelerator's website to download the latest studio since it's been three years, only to find out that it's a paid platform now.
I just want to make a quick bug fix and publish. I don't need any of the services that come with the platform.
I realize there is a free SDK that you can compile yourself, etc, etc.
I don't mind paying for a $36 for one month only if it enables me to just publish a new version of my app.
My question is, if I publish the app after paying the $36 and then cancel my subscription, will the cancellation affect my app? Does the IDE inject some sort of "call home" time bomb?
I tried asking the support at appcelerator but they answered like a politician and dodged it.
Thanks for any help.
A published/compiled app has no direct connection with appcelerator. So if you cancel the subscription nothing happens.
However, if you use paid services... things might go wrong.
Statistics for example is a paid service. If you cancel subscription I assume the app keeps working but will make calls to their backend that most likely will fail (not sure about this). App should keep working.
If you use any cloud service (push notifications, arrow storage etc) your app will stop working of course.
If you don't use any of the services, you can just cancel and be done with it.
That said, if you just want to make 1 change to an app you could just dive in and compile without the Appcelerator Platform and just use the Open Source code.

Mac App crashes when I add a Distribution Profile

I've created a Mac App for Mavericks that uses MapKit. It works fine during development and testing on Xcode 5.1. Now I'd like to submit it to the App Store and I need a Distribution Profile which I've created successfully. Trouble is, as soon as I add it to my project, the app doesn't run anymore - it crashes every time without fail with this error message:
When I change back to "no provisioning profile", or to the profile that Xcode created during development, the app runs again.
My question: Is this expected behaviour, or will the app be rejected by the review team? I know that iOS apps don't run with their distribution profiles, but I'm new to Mac Development. Any insights into this way too complex topic are appreciated!
My app was approved - and the crash was indeed no issue for the app review team.
I had a chat with Apple about this who were kind enough to call me back and explain the issue. Looks like this phenomenon is "kind of" expected behaviour: Mac Apps may or may not crash when run with a Distribution Profile.
To avoid this problem, we can add both a Development AND a Distribution Profile to our app, without one having to replace the other. This was news to me. Had I however opened my tired eyes a bit wider I would have perhaps spotted the little disclosure triangle myself:
Perhaps this helps those with the same issue.

Determine whether app has been previously installed

I'm about to implement some unlock-functionality In-App-Purchase in an app. The client would like the functionality to be available the first two weeks after installing the app, and then go away until the user pays up.
I need the app to determine whether it has been previously installed, deleted, and installed again. If I can't do that users can just reinstall the app and get two more weeks for free.
Any ideas?
It seems all data is deleted when the app itself is deleted, which kind of limits my options. There is a server backend to the app. Is my best option to log something there or is there another way?
You can make use of the keychain in iOS. It will not be removed even if you uninstall the app. But you have to make sure you use the same provisioning profile across different versions of your application.
And, have a look at this utility

Bizarre Xcode/iTunes Provisioning crash

I've been building and deploying apps for several months now and am aware that provisioning can get a bit sticky at times. But my current situation is particularly unusual.
I can attach my development device and build and run the app on it through Xcode. If I archive it for Ad-Hoc Distribution as an ipa file, I can also successfully load it onto a distribution device via iTunes. However, running it on the device causes an immediate crash: it opens then promptly closes.
There are no permissions errors during the iTunes load, and this issue presents so far on 3 distribution devices, including the same device that it successfully runs when sent via Xcode.
For the life of me I cannot figure out what is going on; in the past, if there was a misplaced profile or a device not added to the profile, you'd get a simple permissions error during the iTunes sync. I've never seen it successfully transfer to a device with no errors, but then crash. I'd love some suggestions as I've been working with this for 2 hours trying to track it all down.
All devices are in the provisioning profile and I reloaded the profiles in XCode to make sure they were current. I also reloaded the ad-hoc profile in iTunes to make it was current.
I've had a similar experience with expired provisioning profiles: dev build of an app opens then immediately closes when run on a device. Double check that all profiles installed on the devices are current.

CoreLocation stopped working for a couple of app users

I have an app that relies on CoreLocation. In the last week I've had two users send me an email letting me know that location doesn't work anymore in the app. It's a fairly straightforward app that has the ability to display weather based on your current location.
The users swear that location services is enabled, even for the app specifically. In both cases, everything worked perfectly when they first purchased the app but stopped working all of a sudden (their words).
I've had them do several things for me like use other apps that use location services to see if they work or try from alternate locations. They've even uninstalled my app and re-installed to no avail.
Am I crazy or is the users? It just sounds farfetched to me, but I'm far from an expert at this. In both cases they're using an iPod Touch and/or iPad wifi only model. Both are running 5.0.x.
A re-install of the app should certainly reset things to default, right? Do remnants of an app linger around only to be used on a re-install?
In looking through my code I realized that I changed from StartUpdatingLocation to StartMonitoringSignificantLocationChanges which only works on the iPhone 3GS and up. Since it doesn't work on the iPad/iPod Touch this was creating my issue. I changed my code to start the app using StartUpdatingLocation and once a location is received switch over to StartMonitoringSignficantLocationChanges. This resolved the issue for all iOS devices.