Cake
  • Log In
  • Sign Up
    • In my recent conversation about an experimental new app by Google, I noticed that their Android app is basically just a wrapper around their web app without any additional functionality:

      Having seen that, I wondered if that might be a model for Cake as well: Don't try to build everything from scratch, but just start small with an app that is basically an instance of Google Chrome without the UI. In Android terms, what you need is a WebView, and this page describes how it's done:

      Not having worked with WebView before, I gave it a try and ended up with a mostly functional Android app that could be put on the Play Store just an hour later.

      The app could be expanded from there by replacing parts of the web experience with native UI elements as time allows - for example starting with Cake's navigation bar and replacing it with a native app bar. In order to do so, WebView allows to set a custom user agent string that could be used by the server to serve a variant of the regular content (in the above example, pages that don't include navigation). It could also be used to at least add notifications or better ways to share content to Cake:

      Even if time does not allow in the foreseeable future, having at least some presence on Google's Play Store is probably better than nothing.

    • Hey Factotum,

      It's a great idea and we actually have a long history of tears with the idea on the iPhone.

      Going back in time, we hired a good IOS engineer to do a native app for the iPhone. After a year of struggle, it became clear it was too hard for one engineer, especially when wrangling with the editor. Rich text editors are hard.

      So we hired a second IOS engineer, another good one. And together they labored trying to get the app out. We were aware that Slack's first iphone app was browser based before they replaced it with a native app, so we decided to punt and do that, over the objections of some of our engineers.

      So Kevin did it but when it came submission time to the App Store, Apple rejected it several times because it was a wrapper app. We pointed out that Apple publishes official wrapper apps, but that didn't seem to matter. So we made some custom parts of the code and eventually they relented.

      Then we went to rev it by adding pinch to zoom and a few other things people were asking for, and we submitted the upgrade. Once again, they came back wrapper app and rejected it. We ended up arguing with them in circles. One argument is you accepted the first version and it's working great, so why not the rev? But no.

      So we gave up and the rev never made it to the App Store. I was worried that they would change their minds on the original rev and that's why we let sleeping dogs lie. 😢 Very traumatizing.

      I think that's where we lost our appetite for wrapper apps and maybe we should have looked into it more on the Google side, because they may be more rational.

    • Thanks for the reply, Chris. I've never put anything on Apple's store, so I can't offer any first hand insight - but from what I read and hear, it really does sound as if Google is a bit more relaxed in that regard.

      It seems as if they, too, reject apps that just wrap individual websites sometimes - but those reports sound more like someone trying to offer their private Wordpress blog as an app without any additional functionality.

      I guess that following the pareto principle and doing the 20% of the work that leads to the 80% of the app being native code - or even less - would be more than enough to ease any concerns Google might have (or, rather, throw off any automated systems that are just looking for "small app with single Activity that contains a full-screen WebView and nothing else).

      If that excludes rich text editing, so be it. Just offer the web experience there - or not, it seems as if Android devices don't get rich text editing even on the web.

    • Not having worked with WebView before, I gave it a try and ended up with a mostly functional Android app that could be put on the Play Store just an hour later.

      I might have to have a play with this for my New Zealand adventure riding site, Making the wrapper was pretty easy?

    • Easy in the context of already knowing how to code in Kotlin and for the Android platform. If you've used Android Studio before, it's basically just starting a new project for the boilerplate code, then adding/changing about twenty lines of code mostly from the example I linked to above.

      If that's something you're comfortable with, I could upload the relevant code snippets somewhere.

    • If that's something you're comfortable with, I could upload the relevant code snippets somewhere.

      I've not programmed in Kotlin but have in several other languages. Yes please I'd be keen to have a look at your code if possible.

    • Personally, and I'm fairly sure I'm going to be in the minority here, I don't think that everything needs an app.

      I have several apps on my phone (or did until a recent cull) that add nothing to or are worse than the experience I would get visiting a site that is well designed using a mobile browser.

      Android lets you add a bookmark to any site to the home screen, and unless an app really does offer some added functionality or a much faster experience in some way, then surely that functions as pretty much the same thing.

      The only thing missing then are notifications in the case of a social media or forum site, but I'm getting them all in my email anyway and I'm actually far more productive without all of the apps bombarding me with notifications and calls to come and see something every two minutes.