Download .app from link - ios

What kind of link do I need in order to download a .app file from Safari directly onto a device?
I want to do the same with .apk's, so any information / code snippets would be greatly appreciated.
Thanks!

You should use enterprise distribution. When you create your application archive there will be an option to do enterprise distribution. Once you do this you will get your archive as well as a .plist manifest file. Using these you should be able to create a link by following these instructions:
https://help.apple.com/iosdeployment-apps/?lang=en-us#app43ad871e
You will still need to get your users' UDIDs and create a provisioning profile for them to use. (iTunes required once)
Once that's done your users can click a link and directly install the app. (No itunes required!)

This is not possible with the current app store structure. Unless you are doing some sort of in-house distribution using an Enterprise developer license then the only way to get an app is through an app store link.
If you are thinking about using some kind of limited ad-hoc distribution you will still need to use itunes or iPhoneConfigurator to install it.

Related

Resign an ipa or, xcarchive

I have a requirement to deploy an enterprise application to my users. Vendor has give me an IPA/Xcarchive file. But, the files are signed using vendor’s signing certificate. We don’t want to share our distribution certificate with them and, they are unable to share the xcode with us. I want to know, how can I resign ipa/xcarchive for in-house distribution?
Any help is appreciated.
Thanks
Chetan
Certificates and provisioning profile used for generating IPA contains all the details on which all devices it can be installed, so it is not possible to resign the IPA file without the source code. Below are few available options:
Get the source code: If you can get the source code then you can generate IPA file with your certificates.
Share Device UDID: You can share the device UDIDs wherein you want to install the app with the vendor (might not be a good option for large audience)
TestFlight: You can ask the vendor to upload the app on Testflight and add the users as testers/users and they will be notified for any update available aswell.

Can't figure out how to send iOS Apps Ad Hoc to certain iPhones using Xamarin on Visual Studio 2019

OK, so I created an app using Xamarin. I am wanting to push the app through Visual Studio 2019 on a Windows computer to certain iPhones. I included the my profile on Apple Developer website. You can tell it is ad hoc
Now I am in Visual Studio 2019, you can see I am using the correct provisioning profile
Now when I go to the Archive Manager in Visual Studio 2019 I see a couple of options
When I click Ad Hoc, I only see an option to "Save as". I don't know what to do beyond this point? Unlike when I push App Store, which uploads it to the store.
Please what do I do, what am I missing
That's the idea behind an Ad-Hoc build. The build is used to produce a file that is ready to be installed for the predefined devices. The file type can be either .xcarchive, or .ipa.
Quote from the official docs:
You distribute your app by providing the .ipa file for users to install on their devices. Because you select a valid ad hoc provisioning profile to archive the app, users don’t need to install the profile on their device, only the .ipa file. Users can use iTunes to install the app on their devices. If users want to use Xcode to install the app on their device, share the archive as an .xcarchive file package.
Basically, Apple guides you how to create a package or an archive which will be ready for distribution, but how these files will be distributed is up to the developer.
If you choose Save As in the last step/picture, you will have a distribution-ready .ipa file. You then need to deliver/send this file to the provisioned devices' owners. You can distribute it in 2 ways:
Follow the steps from the documentation. Unfortunately, this means that the user, that will have to have a Mac, in order to install the .ipa file through the iTunes. I haven't tried it on a Windows machine, but I doubt that it will work.
If you wish to simplify the whole installation process, you can go with uploading the file somewhere and sending the link to the users. Here, we can take 2 paths again:
a) Host it on your own. However keep in mind that this will require additional setup. There is plenty of steps only how to achieve this, but here's one way.
How to Install .ipa file to iPhone from Web Link?
b) Host it somewhere else. There are plenty of sites/cloud providers that can handle that for you. Personally, I am using Diawi, but I read somewhere that Dropbox should also work out of the box.

How to distribute and install on test devices an iOS app under development?

I am new to iOS app development. I have a standard Apple iOS developer license. When I build my app it creates an ipa file. If I send this file to someone, will they be able to install it? Or does that require an enterprise license?
You can share an ipa archive with testers/friends using Ad Hoc Distribution. You do not need an enterprise license to do it, team or individual is enough. You will need to register a device's ID in the Member Center and to generate an Ad Hoc provisioning profile with this ID:
Using this method, testers don’t need to be team members or iTunes
Connect users to run the app, but their devices need to be registered
in Member Center. You can register up to 100 devices per year that
your team can use for development and testing. Therefore, choose this
method if you can use a portion of these devices for testing and can
collect device IDs from testers. Also choose this method if you’re not
ready to create an app record in iTunes Connect. You don’t need to
validate or upload your app to iTunes Connect to distribute it using
an ad hoc provisioning profile.
As you have standard development licence, it's enough for distribution under 100 devices, and after one year, you can also remove previously registered devices from your member centre.
But as the answer above described, it should be ad hoc distribution only you can use any except Apple Store distribution, so the easiest way to do that is to just create a development provision with as many selected device as you want to distribute. After that, you just need to install a particular provision in your Mac by just clicking over it and then select the provision in your project.
Now compile your project.
After successful compilation, go to product folder, select the app, and reveal it in folder.
Copy the app file from this folder.
Just create one folder on your desktop and name it Payload.
Paste the app file you just copied inside the folder.
Place one image again on your desktop and name that iTunesArtwork but without extension.
Now select the payload folder and iTunesArtwork file together and compress it.
After compressing it, create archive.zip and rename it to may.ipa.
Now it will ask if you are sure you want to rename it. Press yes.
Now you have ipa read within few steps and you can use this payload and iTunesArtwork for making another .ipa or for any other project. Just leave this both folder and the file on your desktop. It will always help you.
Now go to http://diawi.com and upload your ipa file here which you just renamed, and then when it's done with uploading, press the send button. It will give you a URL. Share it with your testers or friends. They can directly download it in their device. No need to send ipa, and in this process, no one can use re-engineering in your .ipa. It's safe and secure.

Distribute in house iOS app to customers without distributing source code

We created a IOS app and want to distribute it to our customers. The problem is that we can't give them our source code and they can't give their private key to us. How can we distribute the iOS app to our customers? We now have three different customers.
Can we create an ipa without code signing, then give it to our customers and let them code sign the .ipa file?
Just give them the IPA. It's probably easier for it to be signed with your key than not at all - it doesn't matter if it is already signed. The IPA can be unzipped like a normal zip file and then re-signed with the codesign tool as shown in the answers to this question. They can then re-zip it to obtain a properly-signed IPA file.
You can use Testflight, for example. Or Ad-Hoc distribution.

creating ipa for distribution to client

I wanted to know what is the use to create an ipa and distribute it to client for testing when we can easily zip the built app and distribute the zipped .app file.
What is the benefit of creating the .ipa?
Is it that creating the ipa do not need the mobile provisioning profile?
Please clarify my doubt.
I would tell you an advantage from my experience. When you deliver a zipped .app file to a client, if he is using iTunes on Windows machine, he would be tempted to open it(as .app looks like a folder in Windows). That would actually render the app unusable. However IPA file can't be opened in any way. So it is safe to distribute IPA without considering whether it is going to be deployed on a Mac or a Windows PC.
Although middaparka's answer has been marked as correct, the link in his answer is now deprecated. The updated reference is App Distribution Guide
The ipa file is in fact the installable.
I'd recommend reading the iOS Development Guide (see the "Distributing Applications" section in particular), as this explains everything in detail.
The reason why I use the .ipa over .app is because you can have your clients install your adhoc build straight from the iDevice over mobile safari without having to go through iTunes.
This comes in VERY handy. However, it does take some research to do because it is a wee bit tedious. Basically you have to have a html page incorporating a link to a manifest.plist that has a link to the .ipa file.
http://jeffreysambells.com/posts/2010/06/22/ios-wireless-app-distribution/
Use the Build and Archive command in Build menu. Then you can save it to disk as an ipa archive.
You don't need to send the mobile provisionning profile with the .ipa so it's easier to install for your client. And it's easier to build it (Product->Archive in Xcode than share than give the .ipa name).
I don't understand why Apple gives the technic for the .app in the iOs provisionning portal.

Resources