Search code examples
iphoneobjective-citunes

App for limited or restricted audience


I want to know that is is possible to keep an iphone application for the limited audience. The app should only be accessible to the members which are in diffferents places. I dont want Ad hoc distribution as it is limited for 100 devices but it should be unlimited users.

How can I achieve this in iphone?


Solution

  • You can achieve this by simply following below steps. It may help you.

    • App store Provision Profile - You need to create provision profile for App store distribution and make build(.ipa) with this code signing identity.
      When xcode ask you for distribution type select Ad-hoc distribution and save .ipa file in your computer system.
      So now this .ipa is same as you download from app store And no limited to 100 device.
      Please follow this steps to create .ipa file.

      Launch Xcode 5 (Product -> Archive to build the archive)
      Goto Window -> Organizer 
      Select the latest archive and click the Distribute button
      Select Save for enterprise or ad-hoc deployment
      Select your App Store provisioning profile and then Export
      Choose a location to save the .ipa file
      
    • Create Manifest file - it is an simple .plist file. I am also giving example below.

      <?xml version="1.0" encoding="UTF-8"?>
      <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
      <plist version="1.0">
      <dict>
         <key>items</key>
         <array>
           <dict>
               <key>assets</key>
               <array>
                   <dict>
                       <key>kind</key>
                       <string>software-package</string>
                       <key>url</key>
                       <string>http://www.xyz.com/foldername/AdHocDemo.ipa</string>
                   </dict>
               </array>
               <key>metadata</key>
               <dict>
                   <key>bundle-identifier</key>
                   <string>com.xyx.AdHocDemo</string>
                   <key>bundle-version</key>
                   <string>1.0</string>
                   <key>kind</key>
                   <string>software</string>
                   <key>title</key>
                   <string>AdHoc Demo</string>
               </dict>
            </dict>
           </array>
       </dict>
       </plist>
      

      The keys in the above file that need to be modified for your app are:

      1. items.assets.[1].url
      2. items.assets.metadata.bundle-identifier
      3. items.assets.metadata.bundle-version
      4. items.assets.metadata.title.
    • Create HTML file - Create simple html file with below hyperlink. You need to provide URL of your menifest file in below url tag.

      <a href="itms-services://?action=download-manifest&amp; url=http://www.xyz.com/foldername/AdHocDemo.plist"> click this link to install </a>

    • Authantication -This steps are for your distribution of app but everyone can install build who has the link of HTML file. So you need to create authentication for access above HTML page so only authorize member can download application.

    • By doing this way you dont need to go with apple app store. People/Member can download app from your own website. It is calling Ad-hoc/Enterprise distribution.