Engineer originally from Sweden who is currently living and working in Japan.
Working on the hybrid app development platform Monaca and a hybrid app UI component library called Onsen UI.
Enjoys studying Japanese, eating good food and drinking beer.
@aargelius
Hybrid apps are mobile apps implemented using web technologies.
The app lives inside a native WebView and gets access to native functions through a native bridge.
When I'm introspective about the last few years I think the biggest mistake that we made, as a company, is betting too much on HTML5 as opposed to native...
It hardly worked for anyone in 2010 because phones were too slow, so the HTML/JS underpinnings meant worse performance, and users didn’t like that. But times have changed. Modern phones are incredibly fast...
<ons-page>
<ons-toolbar>
<div class="center">Some of my favorite things</div>
</ons-toolbar>
<ons-list>
<ons-list-item>Cream colored ponies</ons-list-item>
<ons-list-item>Crisp apple strudels</ons-list-item>
<ons-list-item>Doorbells</ons-list-item>
<ons-list-item>Sleigh bells</ons-list-item>
<ons-list-item>Schnitzel with noodles</ons-list-item>
...
</ons-list>
</ons-page>Official website: onsen.io
The code on the previous page will be displayed like this in a browser or inside a hybrid app.
Why Onsen?
Onsen UI components are implemented as AngularJS directives.
Just load the library and use "onsen" as a dependency in your app.
<ons-page>
<ons-toolbar>
<div class="center">Settings</div>
</ons-toolbar>
<ons-list>
<ons-list-item>
Push notifications are
{{ push ? 'activated' : 'not activated' }}.
<ons-switch
ng-model="push"
modifier="list-item">
</ons-switch>
</ons-list-item>
</ons-list>
</ons-page><ons-navigator var="myNav">
<ons-page>
<ons-toolbar>
<div class="center">Home</div>
</ons-toolbar>
<ons-list>
<ons-list-item
modifier="tappable"
ng-repeat="item in items"
ng-click="myNav.pushPage('details.html', {item: item})">
{{ item.name }}
</ons-list-item>
</ons-list>
</ons-page>
</ons-navigator><ons-navigator #myNav>
<ons-page>
<ons-toolbar>
<div class="center">Home</div>
</ons-toolbar>
<ons-list>
<ons-list-item
modifier="tappable"
*ng-for="#item of items"
(click)="myNav.pushPage('details.html', {item: item})">
{{ item.name }}
</ons-list-item>
</ons-list>
</ons-page>
</ons-navigator>Almost identical markup helpful when migrating an Onsen app from Angular 1.x to 2.0.