You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@flex.apache.org by bilbosax <wa...@comcast.net> on 2017/02/05 03:36:50 UTC

Updating a Program

I haven't looked into it yet, so thought I would start by asking the wise
people here.  I have written an AIR app that runs on the desktop, with a
version that works on mobile as well.  If I ever add a new feature or
improve the efficiency of the code, I want to offer users updates that they
can download from the app store or from my website for the desktop app.  How
hard is it to get an AIR app to update?  And by update, I mean totally
replace the existing application with the new application, I am concerned
that it will just install a new application next to the existing application
instead of replacing it.



--
View this message in context: http://apache-flex-users.2333346.n4.nabble.com/Updating-a-Program-tp14613.html
Sent from the Apache Flex Users mailing list archive at Nabble.com.

Re: Updating a Program

Posted by Nemi <ne...@gmail.com>.
If you want to use AIR's framework take a look at docs:
Updating AIR applications
<http://help.adobe.com/en_US/air/build/WS5b3ccc516d4fbf351e63e3d118666ade46-7ff2.html>  
Using the update framework
<http://help.adobe.com/en_US/air/build/WS9CD40F06-4DD7-4230-B56A-88AA27541A1E.html>  

There is also nativeapplicationupdater on  github
<https://github.com/pwalczyszyn/nativeapplicationupdater/blob/master/src/com/riaspace/nativeUpdater/NativeApplicationUpdater.as>  
and on  google code
<https://code.google.com/archive/p/nativeapplicationupdater/>   for native
desktop apps.

It is easy thing to do. Most important thing is to understand workflow. It
can be like this:

When app starts it must:
1. check /yourserver/update.xml/ for newer version
2. if there is newer; download, install (for this you can use AIR's update
framework or some custom one)

Setting new app version:
1. Replace /yourserver/yourapp.exe/ with new version
2. edit version information in /yourserver/update.xml /

/update.xml/ contains link for latest /yourserver/yourapp.exe/ and its
version label.



--
View this message in context: http://apache-flex-users.2333346.n4.nabble.com/Updating-a-Program-tp14613p14621.html
Sent from the Apache Flex Users mailing list archive at Nabble.com.

Re: Updating a Program

Posted by OmPrakash Muppirala <bi...@gmail.com>.
The Apache Flex Installer uses application updated.  Here is the code for
it:

https://github.com/apache/flex-utilities/blob/develop/flex-installer/installer/src/org/apache/flex/packageflexsdk/view/UpdaterDialog.mxml

You should be able to reuse/copy the functionality from here as needed.

Thanks,
Om

On Mon, Feb 6, 2017 at 9:03 AM, flex capacitor <fl...@gmail.com>
wrote:

> Well, the information I gave you is using the AIR Application Updater. It
> wraps that functionality up. The AIR updater is a framework that notifies
> your users of new updates, allows installs from the web, provides a nice UI
> and so on.
>
> But at it's simplest form AIR apps can be updated by creating a new version
> and double clicking on it. When you do that it will prompt you that you
> already have the app installed and if you want to overwrite the installed
> version.
>
> Like everyone said just make sure the version number is newer, the id in
> the descriptor is the same, and the certificate is the same.
>
> On Feb 5, 2017 6:24 PM, "bilbosax" <wa...@comcast.net> wrote:
>
> > Holy cow! I appreciate all of the information you have provided, but
> > doesn't
> > the Flex Framework have an easier, more straight forward way to update an
> > app??? I figured maybe I would just have to update the version in my
> > descriptor file or something a little more direct. There isn't a simpler
> > way
> > to do this?
> >
> > By the way, I love your username!
> >
> >
> >
> > --
> > View this message in context: http://apache-flex-users.
> > 2333346.n4.nabble.com/Updating-a-Program-tp14613p14616.html
> > Sent from the Apache Flex Users mailing list archive at Nabble.com.
> >
>

Re: Updating a Program

Posted by flex capacitor <fl...@gmail.com>.
Well, the information I gave you is using the AIR Application Updater. It
wraps that functionality up. The AIR updater is a framework that notifies
your users of new updates, allows installs from the web, provides a nice UI
and so on.

But at it's simplest form AIR apps can be updated by creating a new version
and double clicking on it. When you do that it will prompt you that you
already have the app installed and if you want to overwrite the installed
version.

Like everyone said just make sure the version number is newer, the id in
the descriptor is the same, and the certificate is the same.

On Feb 5, 2017 6:24 PM, "bilbosax" <wa...@comcast.net> wrote:

> Holy cow! I appreciate all of the information you have provided, but
> doesn't
> the Flex Framework have an easier, more straight forward way to update an
> app??? I figured maybe I would just have to update the version in my
> descriptor file or something a little more direct. There isn't a simpler
> way
> to do this?
>
> By the way, I love your username!
>
>
>
> --
> View this message in context: http://apache-flex-users.
> 2333346.n4.nabble.com/Updating-a-Program-tp14613p14616.html
> Sent from the Apache Flex Users mailing list archive at Nabble.com.
>

Re: Updating a Program

Posted by bilbosax <wa...@comcast.net>.
Holy cow! I appreciate all of the information you have provided, but doesn't
the Flex Framework have an easier, more straight forward way to update an
app??? I figured maybe I would just have to update the version in my
descriptor file or something a little more direct. There isn't a simpler way
to do this?

By the way, I love your username!



--
View this message in context: http://apache-flex-users.2333346.n4.nabble.com/Updating-a-Program-tp14613p14616.html
Sent from the Apache Flex Users mailing list archive at Nabble.com.

Re: Updating a Program

Posted by flex capacitor <fl...@gmail.com>.
It takes a few hours of setup work and then half an hour to an hour each
time you create a new build.

I've created a class that helps with the process here
<http://bit.ly/2jQ73yh>. Once you set it up you don't have to change the
code. The setup instructions are in the class ASDocs. They may be slightly
outdated. Let me know.

Then in the future you update the application descriptor online. For the
updating process I use the steps listed here <http://bit.ly/2lcQc5K>.

Whenever you upload a new version and the user opens your app a window will
pop up that asks them if they want to update. If they click yes then your
existing application is updated. All the users existing data is preserved.

On Sat, Feb 4, 2017 at 9:36 PM, bilbosax <wa...@comcast.net> wrote:

> I haven't looked into it yet, so thought I would start by asking the wise
> people here.  I have written an AIR app that runs on the desktop, with a
> version that works on mobile as well.  If I ever add a new feature or
> improve the efficiency of the code, I want to offer users updates that they
> can download from the app store or from my website for the desktop app.
> How
> hard is it to get an AIR app to update?  And by update, I mean totally
> replace the existing application with the new application, I am concerned
> that it will just install a new application next to the existing
> application
> instead of replacing it.
>
>
>
> --
> View this message in context: http://apache-flex-users.
> 2333346.n4.nabble.com/Updating-a-Program-tp14613.html
> Sent from the Apache Flex Users mailing list archive at Nabble.com.
>

Re: Updating a Program

Posted by Nemi <ne...@gmail.com>.
Did you forget to write b) ? :)

b) app can last forever, just migrate certificate. Look  Signing an updated
version of an AIR application
<http://help.adobe.com/en_US/air/build/WS13ACB483-1711-43c0-9049-0A7251630A7D.html>  



--
View this message in context: http://apache-flex-users.2333346.n4.nabble.com/Updating-a-Program-tp14613p14619.html
Sent from the Apache Flex Users mailing list archive at Nabble.com.

Re: Updating a Program

Posted by Clint M <cm...@gmail.com>.
SqlLite db's will be intact.

On Mon, Feb 6, 2017 at 12:34 AM, bilbosax <wa...@comcast.net> wrote:

> Do you know if updating an app per Clintm's suggestion will leave SQLite
> databases intact, or will they get wiped out in the update?
>
>
>
> --
> View this message in context: http://apache-flex-users.
> 2333346.n4.nabble.com/Updating-a-Program-tp14613p14622.html
> Sent from the Apache Flex Users mailing list archive at Nabble.com.
>

Re: Updating a Program

Posted by bilbosax <wa...@comcast.net>.
Do you know if updating an app per Clintm's suggestion will leave SQLite
databases intact, or will they get wiped out in the update?



--
View this message in context: http://apache-flex-users.2333346.n4.nabble.com/Updating-a-Program-tp14613p14622.html
Sent from the Apache Flex Users mailing list archive at Nabble.com.

Re: Updating a Program

Posted by Alex Harui <ah...@adobe.com>.
IMO, Clint's suggestion is the recommended practice.  However, IIRC, some
folks have installed a shell app that loads the guts of the  app as a
module.  Then you can update the app by changing the module and there
isn't an install/upgrade, or at least, not the one you normally do with
AIR apps.

I believe there are some tricks involved around security and being
off-line, loading the module and caching locally, etc.  I just wanted you
to know that is a possibility as well.

-Alex

On 2/5/17, 4:26 PM, "bilbosax" <wa...@comcast.net> wrote:

>Thanks Clintm, I figured it would be something more direct like this. Do
>you
>know how long a certificate lasts? I'm hoping this app will have a long
>lifetime(10 years) and don't know if a certificate can be used for that
>long?
>
>
>
>--
>View this message in context:
>http://apache-flex-users.2333346.n4.nabble.com/Updating-a-Program-tp14613p
>14617.html
>Sent from the Apache Flex Users mailing list archive at Nabble.com.


Re: Updating a Program

Posted by Nemi <ne...@gmail.com>.
digicert.com offers  Code Signing & EV Code Signing Certificates
<https://www.digicert.com/code-signing/code-signing.htm>   that lasts 3
years.

After it expires you have one year to do an  update with migrated
certificate
<http://help.adobe.com/en_US/air/build/WS13ACB483-1711-43c0-9049-0A7251630A7D.html> 
:
/To apply a migration signature, the original certificate must still be
valid or have expired within the last 365 days. This period is termed as the
‘grace period’ and the duration can change in the future./



--
View this message in context: http://apache-flex-users.2333346.n4.nabble.com/Updating-a-Program-tp14613p14620.html
Sent from the Apache Flex Users mailing list archive at Nabble.com.

Re: Updating a Program

Posted by bilbosax <wa...@comcast.net>.
Thanks Clintm, I figured it would be something more direct like this. Do you
know how long a certificate lasts? I'm hoping this app will have a long
lifetime(10 years) and don't know if a certificate can be used for that
long?



--
View this message in context: http://apache-flex-users.2333346.n4.nabble.com/Updating-a-Program-tp14613p14617.html
Sent from the Apache Flex Users mailing list archive at Nabble.com.

Re: Updating a Program

Posted by Clint M <cm...@gmail.com>.
As long as the app id's are the same it will update the application in
place.

If I remember right… if you change the certificate you'll have to either a)
change the app id or ask users to uninstall the current app first because
the install will fail.

On Sat, Feb 4, 2017 at 7:36 PM, bilbosax <wa...@comcast.net> wrote:

> I haven't looked into it yet, so thought I would start by asking the wise
> people here.  I have written an AIR app that runs on the desktop, with a
> version that works on mobile as well.  If I ever add a new feature or
> improve the efficiency of the code, I want to offer users updates that they
> can download from the app store or from my website for the desktop app.
> How
> hard is it to get an AIR app to update?  And by update, I mean totally
> replace the existing application with the new application, I am concerned
> that it will just install a new application next to the existing
> application
> instead of replacing it.
>
>
>
> --
> View this message in context: http://apache-flex-users.
> 2333346.n4.nabble.com/Updating-a-Program-tp14613.html
> Sent from the Apache Flex Users mailing list archive at Nabble.com.
>