MonoTouch: Bundle Name Not Being Displayed Under Icon - ios

I would like to use a shorter version of my app's name for display under the icon. I have read that the Bundle Name is the value that displays this shortened name. I added the Bundle Name (CFBundleName) to my info.plist, but my app's name is still being displayed according to the Bundle Display Name (CFBundleDisplayName). Am I missing something here? Thanks in advance.

Try with metadata->title key:
<?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.example.es/YourAppBundle.ipa</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>XXXXXXXXXX</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>YourAppName</string>
</dict>
</dict>
</array>
</dict>
</plist>

Related

Download inhouse app from another app programmatically

we have a lot of inhouse apps and want an app like AppStore. We did a demo. We can open installed apps but apps,not installed on iPhone, can't be downloaded from our servers to the iPhone.
We do:
if([UIApplication sharedApplication] canOpenURL:..] == false){
NSString *schemelink = [NSString stringWithFormat:#"itms-services://?action=download-manifest&url=%#",**plist_url**];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:schemelink]]
}
The things that we do to find the reason:
Copy-paste plist url to the Mac Safari and I check the plist and it's correct everything(ipa links and others). They all at the same path.
Copy-paste just ipa url. It started to download on Mac.
Copy-paste ipa url with itms-services://?action=download-manifest&url=, it says
There is no application set to open the URL ......ipa
Search the App Store for an application that can open this document, or choose an existing application on your computer.
How can I solve it?
.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://....../AppName.ipa</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>com.company.AppName</string>
<key>bundle-version</key>
<string>1.3</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>AppName</string>
</dict>
</dict>
</array>
</dict>
</plist>
Your plist file should be hosted on HTTPS SSL enabled serve only otherwise you can not install it.
I have attached a sample manifest.plist file with sample data, you can modify with your original one.
<?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://127.0.0.0/app/App.ipa</string>
</dict>
<dict>
<key>kind</key>
<string>display-image</string>
<key>url</key>
<string>https://127.0.0.0/app/icon57.png</string>
</dict>
<dict>
<key>kind</key>
<string>full-size-image</string>
<key>url</key>
<string>https://127.0.0.0/app/icon512.jpg</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>com.companyname.appname</string>
<key>bundle-version</key>
<string>1.0</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>Your application name</string>
</dict>
</dict>
</array>
</dict>
</plist>
Place all the following files in same directory on your server.
App.ipa
icon57.png
icon512.jpg
manifest.plist
Your download URL should look like following.
itms-services://?action=download-manifest&url=https://127.0.0.0/app/manifest.plist
Example Click here to download App.
Also make sure your server supports MIME Type of application/octet-stream for ipa and text/xml for plist.

Dynamic link in ios ota manifest

I'm working on an application where I can use over the air deployment for iOS applications.
At runtime generated .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><![CDATA[https://myapp.com/file/d8A5s]]></string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>com.myapp.example</string>
<key>bundle-version</key>
<string>1</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>App Name</string>
</dict>
</dict>
</array>
</dict>
</plist>
You'll notice that the <url> tag is not a direct link to the file, it is a url that sends a redirect with a direct link to the file. When I change these lines to a direct link to the file, the installation succeeds.
<key>url</key>
<string><![CDATA[https://myapp.com/file/file.ipa]]></string>
I want to do this without a direct URL to the file in the manifest.
The content type https://myapp.com/file/d8A5s returns is application/octet-stream and I am able to download the file when I use my desktop browser to navigate to the URL.
Any help would be appreciated and I'd be happy to provide additional information.

Browser no longer minimizes after installing plist for IOS Enterprise app

I have a hyperlink with an href to:
itms-services://?action=download-manifest&url=https://www.example.com/myFile.plist
And it installs correctly. Before IOS 8, the app downloaded and took you to the home screen on the device where you would watch the app icon indicate downloading. From there the user could easily launch the app as a next step.
This no longer happens...
Is there something that needs to be changed in the plist to trigger this?
<?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://www.myexample.com/download/iOS/myenterpriseapp.ipa</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>com.swatchdog.enterprise</string>
<key>bundle-version</key>
<string>1.0.34</string>
<key>kind</key>
<string>software</string>
<key>subtitle</key>
<string>myApp for iPad II and above</string>
<key>title</key>
<string>SwatchDog</string>
</dict>
</dict>
</array>
</dict>
</plist>

Ad Hoc doesn't get downloaded

I want to distribute my iOS app by Ad Hoc. Since the current version of XCode doesn't create .plist file, so I got one from StackOverflow and filled it as blow.
<?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://hungry.portfolio1000.com/HungryHandongi.ipa</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>com.Akadev.HungryHandongi</string>
<key>bundle-version</key>
<string>1.06</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>배고픈 한동이</string>
</dict>
</dict>
</array>
</dict>
</plist>
The url of the .plist file is: https://dl.dropboxusercontent.com/s/tulw9h412me6ayh/HungryHandongi.plist?dl=0
Now I want to let people download the app through the url http://hungry.portfolio1000.com/hungryhandongi.html which is coded like below:
</head>
<body>
<ul>
<li>Download</li>
</ul>
</body>
</html>
When I open the url with Safari and click 'Download' link, nothing happens. I want know what I've done wrong.
Thank you.
I think you are getting this issue for iOS 8.
Yes for Over the air distribution you need to create plist file manually. and you have to change your identifier like
com.Akadev.HungryHandongi to com.Akadev.HungryHandongi.iOS8fix
Please check below plist , it will help you
<?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.path.com/build/iphone/some/2015/022015/name/appname.ipa</string>
</dict>
<dict>
<key>kind</key>
<string>full-size-image</string>
<key>needs-shine</key>
<true/>
<key>url</key>
<string>http://www.name.com/build/iphone/EnterpriseTB/2015/022015/some/iTunesArtwork.png</string>
</dict>
<dict>
<key>kind</key>
<string>display-image</string>
<key>needs-shine</key>
<true/>
<key>url</key>
<string>http://www.some.com/build/iphone/some/2015/022015/some/Icon.png</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>mobi.somecmp.appname.ios8fix</string>
<key>bundle-version</key>
<string>1.0</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>appname 2015</string>
</dict>
</dict>
</array>
</dict>
</plist>
Note: For ADHoc Distribution device id should be added into your provisioning profile.

Cannot distribute in-house iOS App "Cannot Open Page" Error iOS 7

<?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://app.company.com/myapp/app.ipa</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>com.company.*</string>
<key>bundle-version</key>
<string>1.0.0 (1.0.0)</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>Conference APp</string>
</dict>
</dict>
</array>
</dict>
</plist>
I am trying to access manifest file, to download the App on iPhone.
I point it to the manifest file but it does not seems to read it on the iOS device:
Download
The url parameter of the itms-services link needs to be properly escaped (you can't use a / character, has to be %2f) and it needs to be an absolute URL instead of a relative URL.
Try changing it to:
Download ProjectA Reports
The path was incorrect. There's not difference between this file for IOS6 and IOS7

Resources