Mobile Application Management for iPhone - iphone

I am trying to develop a critical enterprise application for iPhone,which needs to be able to list all the installed applications on the device.
Also the application should allow the user to install other apps from this application by clicking some install button and uninstall app by clicking some uninstall button.That means this app should be able to manage all apps on the device (atleast all the enterprise apps on the device).
I know it is not possible in the sandboxed iPhone environment. So I am thinking to setup some MDM/MAM server which accepts requests from the client app in the iPhone and let the MDM/MAM server manage the app installation,deletion etc .
Is it possible to setup custom MDM or MAM sever? We already have an enterprise account.

If you want to determine whether other apps provided by your company are installed, you can add a unique URL scheme for each to the apps' Info.plist. Then to check their installation, you can iteratively check the return from -[UIApplication canOpenURL:]
If you want to be all crafty about this, you could download the list of url schemes from a server on your intranet. Thus users without a certain app could be directed to download it. Furthermore, you can check the installed version via a second special url for each app version of each app.
This does most of what you want… as for the uninstall, users can just hold down on the app until it jiggles then delete it.

Related

PhoneGap iPhone app installer

I'm developing a cross-platform iPhone (iOS) application using PhoneGap.
One of my clients, who want to test it, is not living in my town, and I'd like to give him an installer so he can test the program. I've already added his phone in the Apple dev center, but I don't know how to create the installer.
Is it possible?
I have been developing a cross platform app using appcelerator and have been sharing all test builds with client using tesflight.
The method of sharing is as simple as creating an account, uploading IPA, selecting the device ID of your client so that only he/she may install it on device. So once this is done, you can either invite client to sign up and download the app or simply share a download link..
Hope this helps.

Is there a way to password protect the download of mac app from appstore?

In one of our project we have 2 binaries, one for iPhone and other for mac. These two application communicate each other to achieve the functionality. We want the user to download and install the iOS app first and then let him download the Mac application.
Is there a way to restrict the user, if the user try to download the mac app before downloading the iPhone app?
Short answer: If you're referring to the Mac App Store, then no.
Long answer: Both, the App Store and the Mac App Store give you no way to control who downloads your app and you are not able to get information about what a user already downloaded.
You could of course ask for an e-mail address in your iOS app and make sure your users register to a server before you e-mail them a link to a private download page (not the Mac App Store).
General advice: I think there is something wrong with the design of your app. It's not clear to me what you're trying to achieve and I bet your users won't either. If you want to make sure they pay for the iOS app before using the Mac app then just alert them in case they downloaded the Mac app first. You need to write some custom service to check for this of course. If there is some functional problem that requires the iOS app to be launched first then you should solve this yourself and not put that burden on the shoulders of your users.
You could allow anyone to download, but simply block any operation until the iOS app has sent some kind of approval token to a server or iCloud for example.
You have to download mac application first, and after downloading you can check if user downloaded iOS app or not, but before downloading you can't check the downloading state of iOS app, because application will upload on appStore not on your personal store.
After downloading iOS app set some flag value on server, and check this flag value on mac app downloading, it it is 1 then download else show alert.
After iOS app downloading -> Set flag value (ios Download=1) to your server.(make web service for this).
After downloading mac app -> Call you web service to check that flag value. if it is 0 then show alert to download iOS app first.

Can you delete an application from another application?

Like this article,
In Android, can you delete an application from another application?
Can you delete an application from another application on windows phone 7 or 8? (including
enterprise features)
and I have a same question with iOS. I know that enterprise features provide installing another application via url. but what about "uninstalls", does it possible ?
No, Windows Phone will not allow your app to access any files outside your own app's sandbox. You can't delete other apps or even access their data. Allowing an app to do so would be a huge security problem.
In iOS, it is not possible to delete an app from another application. Apple will never allow that in a normal device. I am not sure about jail broken iPhones. User has to manually delete an application for normal devices. Looks like even Windows phones wont allow this.
Wrt. to enterprise features, you can install packages, as well as view status of installed packages (installed, percent installed, pending install), plus various properties like app icon etc. But still no API for uninstalling these packages. See InstallationManager API on MSDN here: http://msdn.microsoft.com/en-us/library/windowsphone/develop/windows.phone.management.deployment.installationmanager(v=vs.105).aspx

How to Automatic Update Enterprise App without user interaction

Im currently developing an In-House Enterprise application.
I will publish the app using Apple Enterprise License.
Im currently looking for a way to perform update without having any user interaction.
As i found out that if open the update URL (eg. itms-services://?action=download-manifest&url=%#/app.plist), i will be prompted whether do i want to perform the update or not.
Any other ways to perform enterprise deployment?
Give a try to Apple Configurator (from Mac App Store) that is free. There are also other enterprise softwares, depends on your need and budget, try searching for MDM (mobile device management)...

List of applications installed on a iPhone, via the iPhone itself or iTunes

Is it possible to get a list of all installed applications from an iPhone itself? I have read myths of people accessing the internal iTunes data, getting the list of installed apps that way.
1/ A app installed on the iPhone itself and is able to report all installed apps to an external website.
2/ A desktop application that would parse the iTunes data and gather the required information before posting it to an external website.
Anyone have any (A) experience on either of the above or (B) better ideas on how one would go about gathering the App Store name of an application installed on a iPhone.
It is not possible to get a complete list of applications that are installed on the iPhone from the iPhone itself, unless you work on a jailbroken iPhone. You can test for some applications by testing whether there's an application that responds to a particular URL scheme (using UIApplication's canOpenURL method)
A desktop application can do this by reading the data itself. However, it is not programmatically supported, so you're on your own there.