Why isn't the .plist pointing to my .ipa completing? - ios

I know about other 3rd parties but I'm trying to do Ad Hoc OTA using Dropbox.
99% of the material available is out of date, for iOS4 and pre-dates Xcode 5
After sifting it all this works for me up to a point: I get to download on another device from Dropbox but only partially. But the process continually re-starts halfway through and never completes.
// an email link to ..
// a regular html file on my website using the following:
Tap Here
// the .html file above points to another file on DropBox's servers,
// which is another .html file pointing to the .plist manifest
Your Beta, Sir
// line 14 in the .plist points back to my website
<string>http://www.example.com.au/apps/myApp.ipa</string>
I'm using the .plist generated by Xcode, all the places below suggest editing their example, but none worked to get get me thus far
I tried just linking from an email to my .plist pointing to my.ipa in dropbox. Nope. Not in a million years.
Has anyone done it successfully from scratch since October 2013 ?
that's my question, but some background notes:
the reason for the fancy dance is that I learned that iOS7 expects the .ipa to be served up under HTTPS: I didn't feel like spending a week learning network coding. So I'm using Dropbox to fool itms-services for a trusted certificate.
yes the device is on my provisioning file,and its a distribution profile, not a development profile
one with the latest date
http://digitalpublishing.tumblr.com/post/29479304378/installing-your-developer-app-over-the-air-without
2hrs with this link didnt produce a solution, but worth it for other things that can go wrong
wireless iphone app distribution - problem with itms-services protocol
For newcomers here's some links where not to waste your time on the subject, there's other sites but smack of content-theivery.
( they drained my laptop battery nearly twice, I want some value for my hours ).
http://shinydevelopment.com/blog/over-the-air-ios-provisioning-and-distribution/
http://iosdevelopertips.com/xcode/distribute-ad-hoc-applications-over-the-air-ota.html
http://aaronparecki.com/articles/2011/01/21/1/how-to-distribute-your-ios-apps-over-the-air
http://dr-palaniraja.blogspot.com.au/2011/06/distribute-your-iphoneipad-adhoc-builds.html
http://www.techaheadcorp.com/blog/iphone/wireless-ad-hoc-distribution.php
http://www.buzztouch.com/forum/thread.php?tid=C170BC9A655DAC18CF67787&currentPage=1
http://3qilabs.com/how-to-ad-hoc-distribute-your-ios-app-via-a-website-and-ota/

I think this qualifies better as an answer to my own question, than a comment or an edit:
Apple have deprecated UDID in some way, and the beta tester used an app called UDID TOOL. ( He is a PC user wanting to avoid an iTunes install. Agreed )
I notice his UDID starts with fffffff as does my wife's when i use UDID TOOL. Comparing it to my Authorised devices list in Member Centre, her phone doesn't start with anything like it
So the first wrinkle to put straight is to find a way of retrieving his UDID correctly.
I found this in a tweet from Daiwi

Related

How debug Universal links

I use the cordova plugin "ionic-plugin-deeplinks" (to my knowledge also works with a plain cordova app).
On Android, links when clicked let users choice between chrome and my application.
=> I suppose that app links works
=> As I'm able to access window.IonicDeeplink and redirect the user to the right page
I'm not able to have the same behavior on iOS, when I click a link I always get the app open in Safari.
How can I find clue on issues ?
More context:
apple-app-site-association is got with a HTTP 200 (over https only), it's located in /.well-known/apple-app-site-association:
I checked TeamID and BundleID 5 times (at least);
with the branch.io validator i get all validations green:
Your domain is valid (valid DNS).
Your file is served over HTTPS.
Your server does not return error status codes greater than 400.
Your file's 'content-type' header was found :)
Your JSON is validated.
with the apple validator, I got : "Action required
Could not extract required information for Universal Links. Learn how to implement the recommended Universal Links.
Error no apps with domain entitlements
The entitlement data used to verify deep link dual authentication is from the current released version of your app. This data may take 48 hours to update." (but some devs said that working app add the same error) what to do with that result?
when monitoring server's log while installing the app with Xcode I see a request get a HTTP 200 on apple-app-site-association
while installing the app with Xcode I got no logs referring to swcd in Xcode (I read here that I should if I had error while installing the app). Is a successful installation silent?
I followed that guide to setup entitlements, but some things feel odd with it:
Unlike the snapshot in the guide, I didn't found any *.entitlements file in my project. Should I have one with cordova? (my xCode seems to remember my setting though). Is it possible to check that installed app get entitlements?
I did set my domain in Xcode like this: applinks:mydomain.com and the switch is ON. But I never uploaded any thing from my local dev environment to apple services. Should I have? If yes, how ?
My current interrogations are highlighted but any explanations on any lack of understanding will be more than welcome!!!
Until then I started a verification for testFlight looking for more info.
while installing the app with Xcode I got no logs referring to swcd in xCode
I implemented Universal Links manually, but situation was similar. Particularly I mentioned empty swcd process log while installing the app, and it turned out that most likely iOS didn't even try to download apple-app-site-association file, like if responsible process wasn't run. In my case device restart helped and deep-linking began to work.
Thus I think restarting device is one another step in troubleshooting when you are sure about all your setup.
For anyone trying to debug this in development:
In XCode, ensure you're editing the Debug version of Signing & Capabilities.
To bypass the Apple Universal Links CDN, configure your Debug domains like applinks:?mode=developer -- adding that query string in development is important.
On your iOS Device, go to Settings->Developer->Universal Links and ensure the Associated Domains Development toggle is switched on.
On your iOS Device in Settings->Developer->Universal Links->Diagnostics, enter your Universal Links URL and ensure you get a green checkmark.
After following all of these steps, Universal Links work locally.

Is there a way to get the search result i get in the App Store app on the iOS device? ( How to get the ipa file of "App Store"? )

Updated on 2015-11-1:
One solution I am trying is to start App Store using Applium, so that I can record/monitor iOS UI elements. just like what we did Selenium.
Let's treat App Store as a standard iOS app, is it possible to:
uninstall App Store from my iphone.
get the ipa file of App Store
unzip the ipa file and get the app bundle
run Appium with App Store's app file
Is it possible to get App Store 's ipa file?
======
I want to know the position of my apps when I search on the App Store. When I use the iTunes Search API. I notice the result returned from the iTunes search API for a specific search term are different from the result on the iOS App Store app.
I found This Question is also about this, the owner of that has find out the reason about this condition.
But there is no answer to solve this problem.
Actually I've been trying to build the search request, but it cames that the iOS Appstore is using the HTTPs request, so I don't know what to do with this.
Hope someone can help, I'll be very appreciate.
There is at this time no way to specify that you want the results you would get from an iOS device.
The most obvious solution that comes to mind is to build a search request that appears as I it came from ios in your app code.
I'm sure its possible to determine that by basically proxying an actual iPhone using say your router on your home network to log the traffic from an iphone.
Once you have that you can then basically reverse engineer the call in your app code.
As you can refer from Apple's guidance: Search API, there are too many ways of parameter combination.(Parameters includes:term, country, media, entity, attribute, callback, limit, lang, version, explicit, etc.) So it's almost impossible to find out the way of combination that App Store is adapting so as to get the same search results as users get directly from App Store.
You might want to see if you can get this to work:
In Mac OS X:
Launch iTunes
Under Library menu, click on [Apps] menu.
The iTunes will display all installed app
Right-click on one of those apps
Then click “Show in Finder” option
An alternative to this is simply open the directory of .ipa files stored by using this path: User/Music/iTunes/Mobile Applications
This probably only works with apps you downloaded, but it is worth trying.
It's possible to listen in on https connections by installing a trusted ssl certificate on the device and running traffic through a proxy - basically performing a man-in-the-middle attack on yourself. I've previously used Charles Proxy to do this - here's the guide how to set this up. That way you should be able to see exactly what request the App Store app is sending and what response it is getting. And thus it should also be possible to spoof this request and parse the results elsewhere.

How can you customize the dialog text during an iOS Enterprise Distribution

I have followed the steps to get an iOS Enterprise Distribution to detect an update and install over the air given here:
How to update ios6 enterprise apps over the air
When I push a new .ipa and .plist file, my app updates as expected. However, when it is trying to update there is an alert dialog that shows up with the following text:
<server-name> would like to install "<app-name>"
Is there a way to customize this text, or to accept the dialog automatically? I would like to inform our internal users that this is an update that they need to install. The default text would most likely cause some confusion.
As of the latest SDK, I'm afraid the answer here is a solid 'No'. Over-the-Air (OTA) installs ask the user for confirmation to avoid a drive-by download situation and to try and provide some transparency that this app originates from sources other than the App Store channel.
Let's hypothetically say you decided to make an extremely large multi-gigabyte app and could auto-accept / dismiss the confirmation popup. This would setup the possibility for your users to tap on a hyperlink and get routed at your OTA Manifest file triggering an OTA download over a potentially metered connection.
While you can't auto-accept / dismiss, the Enterprise OTA manifest file includes some optional manifest fields that you can implement to see if you can get something that is more in line with what you are looking for (Apple Enterprise Developer Sample Manifest file). Scroll to the bottom of the sample file and try putting a string in for "subtitle" and "title" in the Metadata dictionary.
I'd also encourage you to file an improvement ticket with Apple (bugreport.apple.com). I'd expect the "customize the text" avenue would be much more in line with Apple's style than the "auto-accept" route, but it certainly doesn't hurt to ask!

How to make mobileconfig file on ios device

Detail: Every stuff in our company has his own calendar and a fixed subscribe url, which is known, I am working on an iOS app, which can help stuffs to install a mobileconfig file and automatically subscribe the calendar, I just don't know where to start
Here is an example of 163EMAIL: https://ssl.mail.163.com/config/mobileconfig/index
I am trying to make one exactly like this!
if all this can be done within only one iOS device will be better.
so all you have is an url of a calendar, with which I can manually subscribe by entering setting-email-add-other-subscribe
and I want to make it a mobileconfig file!
THX!
Here is a good place to start.
"Creating a Profile Server for Over-The-Air Enrollment and Configuration" is the part you should really focus on.
You can use the built-in Apple Configurator on OS X

What files to send to my iOS dev to receive a testable app back?

I hired a developer. He made app. I want to test it.
What I have:
Apple developer account - single - I never could figure out that
company international ID thingy.
Only I can access the account (am willing to give access if that is
only way)
I have OsX 10.6.2 snow lep running on Virtual Box all good
XCode 3.2.something (its older, updating requires new kernel and has
been problematic)
(I can utilize the apple dev provisioning wizard on dev.app.com to
obtain certs and files)
I have an apple certificate file downloaded to my computer that I
made under the provisioning thingy on dev.app.com
iPod Touch 4g (Jailbroken) if needed. (unknown if I can access it
via virtual box)
What I want to do...
Send whatever files to my ios developer so he can create a single file to email back to me. I take said file and install it on my iPod Touch, on my windows computer.
What do I need to send him so the developer can make this happen? Further what do I need to tell him to do. This part may seem odd as why would "I" not knowing how to build an iOS app be telling the dev how to do it. I have requested him to make this all happen before and there is a language barrier.
What I do not want to have to do:
Use the mac anymore (please tell me this is possible.)
(said in another way) I would like to Test apps by putting them on my ipod Touch (using itunes or safari and dev account is ok) BUT I want to be using windows.
Can this be done? I code Android. I do not know Xcode and dealing with builds from Xcode 4.6 then trying to open project in Xcode 3.X not knowing if there are project errors etc. and well...learning xcode jsut doesn't make sense...I mean then why hire a dev? yeah yeah cause he knows C++ I got that part.
Anyway, sorry for the 'flavor' parts of this message I just want to make a message that will sum up the "world of it all" for any future travelers trying to do the same thing.
Summary - I want to test apps on Ipod Touch (or whatever iOS device) using windows to install them to the device. Able and willing to use Mac to create needed files (certs. keychain files etc.) can use Mac for all building aspects.
Please advise and thank you very much programming gawds in advance.
Use the mac anymore (please tell me this is possible.)
2 .(said in
another way) I would like to Test apps by putting them on my ipod
Touch (using itunes or safari and dev account is ok) BUT I want to be
using windows.
It is possible. However, you may not understand the following steps because those should be done by iOS developer.
Step1. Your developer should archive it (In xcode, press Product, then Archive).
Step2. Open Organizer in xcode (top right corner), click the "Archives" page
Step3. Select the app you just built. Then click "Distribute" button and select "Save for enterprise or Ad-Hoc Deployment"
Step4. You will get xxx.ipa. You can drag this file in WINDOWS iTune and sync to your iPod.
Note: Your iPod should mark for "use for development" with valid provision.

Resources