feature suggestion

47 views
Skip to first unread message

Dave Dyer

unread,
Oct 14, 2016, 11:58:42 AM10/14/16
to CodenameOne Discussions

It's difficult to revert to an older version of IOS apps, which is sometimes useful.  It would
be really handy if you provided some limited capability to re-upload an ipa so it could be
reinstalled.

Shai Almog

unread,
Oct 14, 2016, 10:42:12 PM10/14/16
to CodenameOne Discussions
Just download it and keep it. You can install it with a cable and itunes.

Dave Dyer

unread,
Oct 15, 2016, 3:04:15 AM10/15/16
to CodenameOne Discussions
Very inconvenient. Keep and upload/download would be much better.

Shai Almog

unread,
Oct 15, 2016, 10:35:19 PM10/15/16
to CodenameOne Discussions
And expensive.

Dave Dyer

unread,
Oct 16, 2016, 2:09:39 AM10/16/16
to CodenameOne Discussions
How so ? I'm not suggesing you keep all the IPAs, only that you allow me to re-upload
one of them into one you your download wrappers.  Shouldn't that be essentially free?
 
And expensive.

Dave Dyer

unread,
Oct 16, 2016, 2:12:29 AM10/16/16
to CodenameOne Discussions
Seems like a natural way to fit such a thing into you builder workflow would be sort of
a fake build script, where instead of providing all the inputs for a build, the script would
supply the IPA output.

Shai Almog

unread,
Oct 16, 2016, 9:19:18 PM10/16/16
to CodenameOne Discussions
You can just upload to your own server. We don't do anything special and you can copy the manifest we generate.

Our servers expect an entry of a specific type, there is literally no "road" to upload to these servers as that would be a security risk.

Dave Dyer

unread,
Oct 17, 2016, 1:12:51 AM10/17/16
to CodenameOne Discussions
The required files other than the ipa itself are not readily accessible - they're delivered by server
side scripts.  Can you supply a sample set?

Dave Dyer

unread,
Oct 17, 2016, 5:50:19 PM10/17/16
to CodenameOne Discussions
I pieced this together from other sources.  Here's a sample file app.plist that could be put on any server
to facilitate a re-install of an IPA

<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://yourserver/yourapp.ipa</string>
                                </dict>
                        </array>
                        <key>metadata</key>
                        <dict>
                                <key>bundle-identifier</key>
                                <string>yourappname</string>
                                <key>bundle-version</key>
                                <string>4.0</string>
                                <key>kind</key>
                                <string>software</string>
                                <key>subtitle</key>
                                <string>41A472</string>
                                <key>title</key>
                                <string>yourappname</string>
                        </dict>
                </dict>
        </array>
</dict>
</plist>

The one gotcha is that the server protocol must be https:

Part 2 is the actual URL you feed to safari or another browser.  It's convenient to make a trampoline app.html
that looks like this:

<script>
location.href='itms-services://?action=download-manifest&url=https://yourserver/app.plist';
</script>


The other gotcha is that this will only work for a debug build, due to signing issues I suppose, but at least
old debug builds can be reinstated for comparison with current ones.

Shai Almog

unread,
Oct 17, 2016, 10:31:49 PM10/17/16
to CodenameOne Discussions
You can just right click: view source the install page and follow the links.
Reply all
Reply to author
Forward
0 new messages