RIP Chrome Web App platform

230 views
Skip to first unread message

David Brodbeck

unread,
Aug 21, 2016, 2:46:06 PM8/21/16
to Chromium Apps
Google is dropping Chrome App support on all OS's except ChromeOS:
http://blog.chromium.org/2016/08/from-chrome-apps-to-web.html

Supposedly it will continue on Chromebooks for some time going
forward, but I think it's going to wither pretty fast; their obvious
goal is to have Android apps run on all their portable devices, sort
of a Windows 10 style "one OS to rule them all" concept.

The suggested replacement for packaged apps is HTML5 web apps, but
that's hardly a replacement; HTML5 by design is only suitable for toy
apps, ones that never have to write a file or talk to arbitrary
network hosts -- both of which are required by my app.

I suppose the lesson here is never put effort into building something
on the shifting sand of Google's APIs.

--
GPG Key Fingerprint: 0DB7 4B50 8910 DBC5 B510 79C4 3970 2BC3 2078 D875

Zachary Yaro

unread,
Aug 21, 2016, 3:26:38 PM8/21/16
to David Brodbeck, Chromium Apps

Their decision to kill the Chrome App Launcher makes a lot more sense now.  As disappointing as it is to have yet another Google API get deprecated, Chrome packaged apps always had the issue of making those web apps exclusive to one browser.  This move has the upside of moving Google back toward supporting the open web.

Zachary Yaro


--
You received this message because you are subscribed to the Google Groups "Chromium-Apps-Announce" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chromium-apps+unsubscribe@chromium.org.
To post to this group, send email to chromi...@chromium.org.
Visit this group at https://groups.google.com/a/chromium.org/group/chromium-apps/.
For more options, visit https://groups.google.com/a/chromium.org/d/optout.

David Brodbeck

unread,
Aug 21, 2016, 6:26:24 PM8/21/16
to Zachary Yaro, Chromium Apps
I guess. Unfortunately my app does things that will never be supported
by the open web, so it's the end of the line for it.
>> email to chromium-app...@chromium.org.
>> To post to this group, send email to chromi...@chromium.org.
>> Visit this group at
>> https://groups.google.com/a/chromium.org/group/chromium-apps/.
>> For more options, visit https://groups.google.com/a/chromium.org/d/optout.



Alain Ekambi

unread,
Aug 21, 2016, 6:32:00 PM8/21/16
to David Brodbeck, Zachary Yaro, Chromium Apps
Not at all :) Have a look at nw.js. It supports Chrome Apps. (http://nwjs.io/)
You dont even need to rewrite anything. Works out of  the box :)


>> To post to this group, send email to chromi...@chromium.org.
>> Visit this group at
>> https://groups.google.com/a/chromium.org/group/chromium-apps/.
>> For more options, visit https://groups.google.com/a/chromium.org/d/optout.



--
GPG Key Fingerprint: 0DB7 4B50 8910 DBC5 B510 79C4 3970 2BC3 2078 D875

--
You received this message because you are subscribed to the Google Groups "Chromium-Apps-Announce" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chromium-apps+unsubscribe@chromium.org.

To post to this group, send email to chromi...@chromium.org.
Visit this group at https://groups.google.com/a/chromium.org/group/chromium-apps/.
For more options, visit https://groups.google.com/a/chromium.org/d/optout.



--

Alain Ekambi

Co-Founder

Ahomé Innovation Technologies

http://www.ahome-it.com/

David Brodbeck

unread,
Aug 21, 2016, 6:49:07 PM8/21/16
to Alain Ekambi, Zachary Yaro, Chromium Apps
I was referring more to native HTML5 web apps, which is what Google is
holding up as a replacement.

nw.js would be fine if my app were written for Node. It's not. Even
if I rewrote it, it would lose access to things like chrome.sync for
central storage for settings, which makes the whole exercise of a
cross-platform application somewhat pointless.

Currently I see no option except letting the app end-of-life when
Google pulls the plug. I've learned a valuable lesson about building
anything in Google's ecosystem, I guess.
>> >> email to chromium-app...@chromium.org.
>> >> To post to this group, send email to chromi...@chromium.org.
>> >> Visit this group at
>> >> https://groups.google.com/a/chromium.org/group/chromium-apps/.
>> >> For more options, visit
>> >> https://groups.google.com/a/chromium.org/d/optout.
>>
>>
>>
>> --
>> GPG Key Fingerprint: 0DB7 4B50 8910 DBC5 B510 79C4 3970 2BC3 2078 D875
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Chromium-Apps-Announce" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to chromium-app...@chromium.org.
>> To post to this group, send email to chromi...@chromium.org.
>> Visit this group at
>> https://groups.google.com/a/chromium.org/group/chromium-apps/.
>> For more options, visit https://groups.google.com/a/chromium.org/d/optout.
>
>
>
>
> --
>
> Alain Ekambi
>
> Co-Founder
>
> Ahomé Innovation Technologies
>
> http://www.ahome-it.com/



Alain Ekambi

unread,
Aug 21, 2016, 6:52:25 PM8/21/16
to David Brodbeck, Zachary Yaro, Chromium Apps
Like I was saying nw.js supports  the chrome.* api. No need to rewrite anything.
Just use nw.js to package your app and it should work. 


>> >> To post to this group, send email to chromi...@chromium.org.
>> >> Visit this group at
>> >> https://groups.google.com/a/chromium.org/group/chromium-apps/.
>> >> For more options, visit
>> >> https://groups.google.com/a/chromium.org/d/optout.
>>
>>
>>
>> --
>> GPG Key Fingerprint: 0DB7 4B50 8910 DBC5 B510 79C4 3970 2BC3 2078 D875
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Chromium-Apps-Announce" group.
>> To unsubscribe from this group and stop receiving emails from it, send an

>> To post to this group, send email to chromi...@chromium.org.
>> Visit this group at
>> https://groups.google.com/a/chromium.org/group/chromium-apps/.
>> For more options, visit https://groups.google.com/a/chromium.org/d/optout.
>
>
>
>
> --
>
> Alain Ekambi
>
> Co-Founder
>
> Ahomé Innovation Technologies
>
> http://www.ahome-it.com/



--
GPG Key Fingerprint: 0DB7 4B50 8910 DBC5 B510 79C4 3970 2BC3 2078 D875

David Brodbeck

unread,
Aug 21, 2016, 7:36:00 PM8/21/16
to Alain Ekambi, Zachary Yaro, Chromium Apps
I can give it a shot. I'm skeptical because I've written stuff for
node before, and including multiple javascript files requires some
pretty specific syntax; it's not nearly as free-form as a packaged
app, where you can just list them all in the manifest. I actually
reused a class from my packaged app in a node app, at one point, and I
had to put a fair bit of work into rewriting its function declarations
and setting up a 'modules.export' block in order to require() it.
They're just fundamentally different application structures. I
imagine if you've already written everything the "node way" it's
pretty easy, though.
>> >> >> email to chromium-app...@chromium.org.
>> >> >> To post to this group, send email to chromi...@chromium.org.
>> >> >> Visit this group at
>> >> >> https://groups.google.com/a/chromium.org/group/chromium-apps/.
>> >> >> For more options, visit
>> >> >> https://groups.google.com/a/chromium.org/d/optout.
>> >>
>> >>
>> >>
>> >> --
>> >> GPG Key Fingerprint: 0DB7 4B50 8910 DBC5 B510 79C4 3970 2BC3 2078 D875
>> >>
>> >> --
>> >> You received this message because you are subscribed to the Google
>> >> Groups
>> >> "Chromium-Apps-Announce" group.
>> >> To unsubscribe from this group and stop receiving emails from it, send
>> >> an
>> >> email to chromium-app...@chromium.org.
>> >> To post to this group, send email to chromi...@chromium.org.
>> >> Visit this group at
>> >> https://groups.google.com/a/chromium.org/group/chromium-apps/.
>> >> For more options, visit
>> >> https://groups.google.com/a/chromium.org/d/optout.
>> >
>> >
>> >
>> >
>> > --
>> >
>> > Alain Ekambi
>> >
>> > Co-Founder
>> >
>> > Ahomé Innovation Technologies
>> >
>> > http://www.ahome-it.com/
>>
>>
>>
>> --
>> GPG Key Fingerprint: 0DB7 4B50 8910 DBC5 B510 79C4 3970 2BC3 2078 D875
>
>
>
>
> --
>
> Alain Ekambi
>
> Co-Founder
>
> Ahomé Innovation Technologies
>
> http://www.ahome-it.com/



Alain Ekambi

unread,
Aug 21, 2016, 7:40:09 PM8/21/16
to David Brodbeck, Zachary Yaro, Chromium Apps
I m sure it will work out of the box :) Give it a try and let me know :)


>> >> >> To post to this group, send email to chromi...@chromium.org.
>> >> >> Visit this group at
>> >> >> https://groups.google.com/a/chromium.org/group/chromium-apps/.
>> >> >> For more options, visit
>> >> >> https://groups.google.com/a/chromium.org/d/optout.
>> >>
>> >>
>> >>
>> >> --
>> >> GPG Key Fingerprint: 0DB7 4B50 8910 DBC5 B510 79C4 3970 2BC3 2078 D875
>> >>
>> >> --
>> >> You received this message because you are subscribed to the Google
>> >> Groups
>> >> "Chromium-Apps-Announce" group.
>> >> To unsubscribe from this group and stop receiving emails from it, send
>> >> an

>> >> To post to this group, send email to chromi...@chromium.org.
>> >> Visit this group at
>> >> https://groups.google.com/a/chromium.org/group/chromium-apps/.
>> >> For more options, visit
>> >> https://groups.google.com/a/chromium.org/d/optout.
>> >
>> >
>> >
>> >
>> > --
>> >
>> > Alain Ekambi
>> >
>> > Co-Founder
>> >
>> > Ahomé Innovation Technologies
>> >
>> > http://www.ahome-it.com/
>>
>>
>>
>> --
>> GPG Key Fingerprint: 0DB7 4B50 8910 DBC5 B510 79C4 3970 2BC3 2078 D875
>
>
>
>
> --
>
> Alain Ekambi
>
> Co-Founder
>
> Ahomé Innovation Technologies
>
> http://www.ahome-it.com/



--
GPG Key Fingerprint: 0DB7 4B50 8910 DBC5 B510 79C4 3970 2BC3 2078 D875

mathieu...@gmail.com

unread,
Aug 22, 2016, 1:41:56 AM8/22/16
to Alain Ekambi, David Brodbeck, Zachary Yaro, Chromium Apps
Hello everyone,

In my case our product line relies upon the HID API from google Apps, as it was an extremely convenient way to have something up and running on linux/mac/windows with a one click installation process.


PhistucK

unread,
Aug 22, 2016, 1:45:08 AM8/22/16
to mathieu...@gmail.com, Alain Ekambi, David Brodbeck, Zachary Yaro, Chromium Apps
Perhaps the Web USB API would help in this case (not stable yet, but ready for experimentation, I think)?


PhistucK

mathieu...@gmail.com

unread,
Aug 22, 2016, 1:51:42 AM8/22/16
to PhistucK, Alain Ekambi, David Brodbeck, Zachary Yaro, Chromium Apps
Hello,

Oh I wasn't aware of it!
Is this really going to be integrated in web extensions?

Regards

PhistucK

unread,
Aug 22, 2016, 1:59:30 AM8/22/16
to mathieu...@gmail.com, Alain Ekambi, David Brodbeck, Zachary Yaro, Chromium Apps
No, a standard open web platform API.


PhistucK

mathieu...@gmail.com

unread,
Aug 22, 2016, 2:11:29 AM8/22/16
to PhistucK, Alain Ekambi, David Brodbeck, Zachary Yaro, Chromium Apps
Hello there,

Do you mean that in that case it'd be a per website API rather than a general API that extensions could use?

Thanks,
Mathieu

PhistucK

unread,
Aug 22, 2016, 2:14:49 AM8/22/16
to mathieu...@gmail.com, Alain Ekambi, David Brodbeck, Zachary Yaro, Chromium Apps
Every website will be able to use it after the user allows it, like with Geolocation.
But that may take some time, like I mentioned, since it is not enabled by default yet.
You better try it now (see about:flags and enable experimental web platform features as well as WebUSB) to see if it lets you achieve your use case.


PhistucK

mathieu...@gmail.com

unread,
Aug 22, 2016, 2:17:31 AM8/22/16
to PhistucK, Alain Ekambi, David Brodbeck, Zachary Yaro, Chromium Apps
Unfortunately that won't work in our case.

Thanks for the tip though!

Steven Sanborn

unread,
Aug 23, 2016, 10:28:14 PM8/23/16
to mathieu...@gmail.com, PhistucK, Alain Ekambi, David Brodbeck, Zachary Yaro, Chromium Apps
So I have a packaged app that runs custom presentations online and offline.  It has  fairly deep file synching capabilities that go way beyond  localStorage limits . I noticed that extensions dont seem to be going away and were one of suggested pathways, but im not too familiar with them.    Under the hood they seem similar. Instead of launching the app from chrome://apps, can't i create a new tab from the extension popup that points to the  original app landing page?  After doing this and changing the manifest it all seemed to work. I mainly use the extension to write and synch offline files that are way bigger than localStorage will permit using the chrome filesystem api.  Does anyone know if there is anything wrong/lost  with converting the packaged app to an extension ? 

Steven

Chua, Chee How

unread,
Aug 23, 2016, 11:16:41 PM8/23/16
to Steven Sanborn, mathieu...@gmail.com, PhistucK, Alain Ekambi, David Brodbeck, Zachary Yaro, Chromium Apps
From what you described, the main difference I can tell is that the user experience is going to be different.

As an extension, the user is always going to start your app by clicking on the extension icon, I assume? Otherwise, it's probably going to be the same, unless your app is using a packaged app-specific API that is not available to extensions.

But I guess that's not going to be too much impact since Google's rationale is that only 1% of users ever use the packaged app?

Luis Montes

unread,
Aug 24, 2016, 12:27:39 AM8/24/16
to PhistucK, mathieu...@gmail.com, Alain Ekambi, David Brodbeck, Zachary Yaro, Chromium Apps
WebUSB is not a generic USB API in the way that chrome.usb is.  WebUSB requires specific firmware on a USB peripheral that tells chrome which domain to open, then prompts the user for access.  So far the only things I've seen tested are atmel 32u4 devices using a sketch from https://github.com/webusb/arduino  I wrote more about it here:  http://iceddev.com/blog/webusb-and-javascript-robotics/

You should already be making secure cross-domain web requests with CORS.  And you can use a progressive web app/servicewoker for offline support. 

The real problem with killing chrome apps is the raw serial port and TCP/UDP access.    There's some initial specs for open APIs for these, but slim chance of us getting implementations of those before chrome packaged apps are killed.

Electron/NWjs are only acceptable stopgaps if you don't mind distributing executables and having a different app or a fork chromebooks.  The chrome webstore was far more efficient than that. And re-writing in Java/Android for chromebooks is completely out of the question for developers that have been using web technologies.

Google is pulling the plug way too soon.

Spencer Shaw

unread,
Aug 24, 2016, 6:53:24 AM8/24/16
to Chua, Chee How, Zachary Yaro, David Brodbeck, mathieu...@gmail.com, Alain Ekambi, PhistucK, Chromium Apps, Steven Sanborn

Will there be issues with full screen mode / kiosk mode if switching to extension?

Kelly Cox

unread,
Aug 24, 2016, 9:45:12 AM8/24/16
to chromi...@chromium.org, Nathan Brewer
I AGREE that Google is pulling the plug way to soon!

Kelly Cox 800.529.2334 www.kayceesoftware.com

On 8/23/2016 10:27 PM, Luis Montes wrote:
> WebUSB is not a generic USB API in the way that chrome.usb is. WebUSB
> requires specific firmware on a USB peripheral that tells chrome which
> domain to open, then prompts the user for access. So far the only things
> I've seen tested are atmel 32u4 devices using a sketch from
> https://github.com/webusb/arduino I wrote more about it here:
> http://iceddev.com/blog/webusb-and-javascript-robotics/
>
> You should already be making secure cross-domain web requests with CORS.
> And you can use a progressive web app/servicewoker for offline support.
>
> The real problem with killing chrome apps is the raw serial port and
> TCP/UDP access. There's some initial specs for open APIs for these, but
> slim chance of us getting implementations of those before chrome packaged
> apps are killed.
>
> Electron/NWjs are only acceptable stopgaps if you don't mind distributing
> executables and having a different app or a fork chromebooks. The chrome
> webstore was far more efficient than that. And re-writing in Java/Android
> for chromebooks is completely out of the question for developers that have
> been using web technologies.
>
> Google is pulling the plug way too soon.
>
> On Sun, Aug 21, 2016 at 10:44 PM, PhistucK <phis...@gmail.com> wrote:
>
>> Perhaps the Web USB API would help in this case (not stable yet, but ready
>> for experimentation, I think)?
>>
>>
>> ☆*PhistucK*
>>>>>>>>>>> email to chromium-app...@chromium.org.
>>>>>>>>>>> To post to this group, send email to
>>>>> chromi...@chromium.org.
>>>>>>>>>>> Visit this group at
>>>>>>>>>>> https://groups.google.com/a/chromium.org/group/chromium-apps/.
>>>>>>>>>>> For more options, visit
>>>>>>>>>>> https://groups.google.com/a/chromium.org/d/optout.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> GPG Key Fingerprint: 0DB7 4B50 8910 DBC5 B510 79C4 3970 2BC3 2078
>>>>> D875
>>>>>>>>> --
>>>>>>>>> You received this message because you are subscribed to the Google
>>>>>>>>> Groups
>>>>>>>>> "Chromium-Apps-Announce" group.
>>>>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>> send
>>>>>>>>> an
>>>>>>>>> email to chromium-app...@chromium.org.
>>>>>>>>> To post to this group, send email to chromi...@chromium.org.
>>>>>>>>> Visit this group at
>>>>>>>>> https://groups.google.com/a/chromium.org/group/chromium-apps/.
>>>>>>>>> For more options, visit
>>>>>>>>> https://groups.google.com/a/chromium.org/d/optout.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>>
>>>>>>>> Alain Ekambi
>>>>>>>>
>>>>>>>> Co-Founder
>>>>>>>>
>>>>>>>> Ahomé Innovation Technologies
>>>>>>>>
>>>>>>>> http://www.ahome-it.com/
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> GPG Key Fingerprint: 0DB7 4B50 8910 DBC5 B510 79C4 3970 2BC3 2078
>>>>> D875
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>>
>>>>>> Alain Ekambi
>>>>>>
>>>>>> Co-Founder
>>>>>>
>>>>>> Ahomé Innovation Technologies
>>>>>>
>>>>>> http://www.ahome-it.com/
>>>>>
>>>>>
>>>>> --
>>>>> GPG Key Fingerprint: 0DB7 4B50 8910 DBC5 B510 79C4 3970 2BC3 2078 D875
>>>>>
>>>>
>>>>
>>>> --
>>>>
>>>> Alain Ekambi
>>>>
>>>> Co-Founder
>>>>
>>>> Ahomé Innovation Technologies
>>>>
>>>> http://www.ahome-it.com/ <http://ahome-it.com/>
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Chromium-Apps-Announce" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to chromium-app...@chromium.org.
>>>> To post to this group, send email to chromi...@chromium.org.
>>>> Visit this group at https://groups.google.com/a/ch
>>>> romium.org/group/chromium-apps/.
>>>> For more options, visit https://groups.google.com/a/ch
>>>> romium.org/d/optout.
>>>>
>>> --
>>> You received this message because you are subscribed to the Google Groups
>>> "Chromium-Apps-Announce" group.
>>> To unsubscribe from this group and stop receiving emails from it, send an
>>> email to chromium-app...@chromium.org.
>>> To post to this group, send email to chromi...@chromium.org.
>>> Visit this group at https://groups.google.com/a/ch
>>> romium.org/group/chromium-apps/.
>>> For more options, visit https://groups.google.com/a/chromium.org/d/optout
>>> .
>>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Chromium-Apps-Announce" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to chromium-app...@chromium.org.

Chua, Chee How

unread,
Aug 24, 2016, 9:40:01 PM8/24/16
to Spencer Shaw, Zachary Yaro, David Brodbeck, mathieu...@gmail.com, Alain Ekambi, PhistucK, Chromium Apps, Steven Sanborn
Full screen should be fine since the extension's "app" is going to be running in a tab in the browser - it will behave the same as another normal Web page.

For kiosk mode, are you referring to kiosk mode for Chrome on the desktop (Windows/Mac/Linux)? I'm not too familiar with kiosk mode for Chrome on Windows/Linux/Mac but if it's similar to single-app kiosk mode on Chromebooks, it will only run a kiosk app (which I presume to be under the packaged app category). Is there an equivalent of a public session kiosk mode for Chrome on desktops?

David Brodbeck

unread,
Aug 26, 2016, 2:09:10 PM8/26/16
to Luis Montes, PhistucK, mathieu...@gmail.com, Alain Ekambi, Zachary Yaro, Chromium Apps
On Tue, Aug 23, 2016 at 9:27 PM, Luis Montes <mont...@gmail.com> wrote:
> The real problem with killing chrome apps is the raw serial port and TCP/UDP
> access.

I don't see us ever getting TCP access beyond the heavily restricted
Websockets API. There are just too many security issues with
Javascript being able to make arbitrary TCP connections. They only
allowed it for packaged apps because installing an app requires a
specific effort on the part of the user, beyond just visiting a web
page, I think.

Wolf War

unread,
Aug 27, 2016, 10:13:14 AM8/27/16
to Steven Sanborn, mathieu...@gmail.com, PhistucK, Alain Ekambi, David Brodbeck, Zachary Yaro, Chromium Apps
extensions do not support syncFileSystem (I think you are using it from your description)
I would be nice if Chrome devs would open syncFileSystem for extensions too, now that packaged apps are being deprecated
-------------------------------
btw. as general question to all with experience on this:
could we use syncFS trough nw.js ?
Reply all
Reply to author
Forward
0 new messages