cannot connect to example.com in iOS enterprise app
Asked Answered
T

1

7

I'm facing a serious problem. I'm trying to make a enterprise app live.By using BetaBuilder I follows these steps:

myApp.ipa
manifest.plist
index.html

manifest.plist:

<?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>https://example.com/ios/myapp.ipa</string>
                </dict>
            </array>
            <key>metadata</key>
            <dict>
                <key>bundle-identifier</key>
                <string>com.com.myapp</string>
                <key>bundle-version</key>
                <string>1.0</string>
                <key>kind</key>
                <string>software</string>
                <key>title</key>
                <string>Myapp</string>
            </dict>
        </dict>
    </array>
</dict>
</plist>

and the index.html file:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
<title>Myapp - Beta Release</title>
</head>
<body>

<div id="container">
  <h1>iOS 4.0 Users:</h1>
  <div class="link"><a href="itms-services://?action=download-manifest&url=https://example.com/ios/manifest.plist">Tap Here to Install</a>
  </div>
</div>

</body>
</html>

I even made the link http to https. But it always says :Cannot connect to example.com. Whats wrong with the setup?

Tokharian answered 10/4, 2015 at 11:2 Comment(0)
G
8

Over-The-Air iOS distributions must be served from using SSL with a verified SSL certificate.

Now to distrubute OTA you must follow these steps.

1) Provide a link to your generated .plist file that contains the manifest for the application download. This link MUST be served over SSL with a verified SSL certificate. An example of a valid .plist file is such:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//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>https://[full download url].ipa</string>
          </dict>
        </array>
        <key>metadata</key>
        <dict>
          <key>bundle-identifier</key>
          <string><full bundle identifier></string>
          <key>bundle-version</key>
          <string>[version string]</string>
          <key>kind</key>
          <string>software</string>
          <key>title</key>
          <string>[software name]</string>
        </dict>
      </dict>
    </array>
  </dict>
</plist>

2) URL key in the .plist file must be served from a valid SSL certificate.

Now I am not 100% of your server setup but there is the possibility the web server does not respond correctly to the .plist extension as well as the .ipa extension. You must set your web server to understand the following file extension \ mime-type:

  • Extension: .plist
  • MimeType: application/xml

  • Extension: .ipa

  • MimeType: application/octet-stream

We had many problems at first getting our applications to be deployed over the air. The biggest hurdle was around the SSL certificate and MimeTypes.

One final comment, I am sure you have your own domain and arent using example.com in your links or plist files.

Cheers..

Greensand answered 10/4, 2015 at 11:18 Comment(6)
Please tell me one thing. This link MUST be served over SSL with a verified SSL certificate. What do you mean by this> Can you explain further? An SSL certificate already added to the server.Kindly note that its a nignx server.Tokharian
The SSL certificate must be from a Trusted Certifcate authority. Self signed certificates are not valid. Also see the Apple troubleshooting guides. developer.apple.com/library/ios/technotes/tn2319/_index.htmlGreensand
Ok, tell me one thing. while installing the app , will the SSL certificate be installed first or no need of certificate installation in the ios devices.Tokharian
The SSL does not need to be installed into the iOS device. The certifcate must be on the web server.Greensand
can you help me with my issue? please find it @ #39206522Overhaul
Will self signed certificates still not work even after being installed on the devices?Beckman

© 2022 - 2024 — McMap. All rights reserved.