Danielle Teixeira
Desenvolvedora front-end e mobile intusiasta IoT e UX/UI Design, compartilho minhas experiências profissionais
Objetivo
Introdução App Híbrida
AngularJS
Phonegap/Cordova
Ecossistema Ionic
Referências
Fazer uma breve introdução e entender como funciona o ecossistema do Ionic.
Executa no browser
Completo para CRUDs
Separação lógica, alta abstração
Customização de componentes HTML
Mantido pela Google
meuModulo.controller('MyController', ['$scope', 'greeter',
function($scope, greeter) {
}
]);
var MyController = function($scope, greeter) {
// ...
}
MyController.$inject = ['$scope', 'greeter'];
someModule.controller('MyController', function($scope, greeter) { // ... });
$ npm install -g cordova ionic
$ ionic start minhaAplicacao tabs
$ cd minhaAplicacao
$ ionic serve
$ ionic build ios android
$ ionic emulate ios android
Tasks do Gulp a serem executadas por $ ionic prepare
Plataformas suportadas pela aplicação. Ex: android e ios
Plugins utilizados pelo aplicativo ex: OAuth
Pasta de arquivos sass
Pasta principal do projeto. Htmls, css, js, Libs
Gerencia os pacotes do bower
Contém algumas configurações do projeto
Arquivo com tasks de automatização
Algumas informações do projeto
Dependências do Gulp e de alguns plugins
ionic serve --lab
<div class="list">
<div class="item item-divider">
Candy Bars
</div>
<a class="item" href="#">
Butterfinger
</a>
<a class="item" href="#">
Kit Kat
</a>
...
</div>
List
Form
<div class="list">
<label class="item item-input">
<input type="text" placeholder="First Name">
</label>
<label class="item item-input">
<input type="text" placeholder="Last Name">
</label>
<label class="item item-input">
<textarea placeholder="Comments"></textarea>
</label>
</div>
<ion-tabs>
<ion-tab title="Home" icon="ion-ios-home">
<ion-nav-view name="home"></ion-nav-view>
</ion-tab>
<ion-tab title="About" icon="ion-ios-information">
<ion-nav-view name="about"></ion-nav-view>
</ion-tab>
<ion-tab title="Contact" icon="ion-ios-world">
<ion-nav-view name="contact"></ion-nav-view>
</ion-tab>
</ion-tabs>
Navigation
<ion-spinner></ion-spinner>
<ion-spinner icon="dots"></ion-spinner>
<ion-spinner class="spinner-light"></ion-spinner>
Spinner
<div class="list card">
<div class="item item-avatar">
<img src="mcfly.jpg">
<h2>Marty McFly</h2>
<p>November 05, 1955</p>
</div>
<div class="item item-body">
<img class="full-image" src="delorean.jpg">
<p>
This is a "Facebook" styled Card. The header is created
from a Thumbnail List item,the content is from a card-body consisting
of an image and paragraph text. The footer consists of tabs, icons
aligned left, within the card-footer.
</p>
<p>
<a href="#" class="subdued">1 Like</a>
<a href="#" class="subdued">5 Comments</a>
</p>
</div>
</div>
Cards
Mais de 700 MIT licenciado font-icons incluídos
Compartilhe seus aplicativos
$ ionic upload
$ ionic share email@gmail.com
http://ngcordova.com/docs/plugins/
module.controller('PictureCtrl', function($scope, $cordovaCamera) {
document.addEventListener("deviceready", function () {
var options = {
quality: 50,
destinationType: Camera.DestinationType.DATA_URL,
sourceType: Camera.PictureSourceType.CAMERA,
allowEdit: true,
encodingType: Camera.EncodingType.JPEG,
targetWidth: 100,
targetHeight: 100,
popoverOptions: CameraPopoverOptions,
saveToPhotoAlbum: false
};
$cordovaCamera.getPicture(options).then(function(imageData) {
var image = document.getElementById('myImage');
image.src = "data:image/jpeg;base64," + imageData;
}, function(err) {
// error
});
}, false);
});
$ keytool -genkey -v -keystore SEU-APP.keystore -alias SEU-APP
-keyalg RSA -keysize 2048 -validity 10000
$ ionic platform add android
$ cordova build android
$ jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore
SEU-APP.keystore android-release-unsigned.apk ondecotar
$ zipalign -v 4 android-release-unsigned.apk signed.apk
Nativo x Híbrido
Tipos de Aplicativos
Arquitetura Ionic
Ecossistema ionic
Publicação App
Danielle Teixeira
https://slides.com/danielleteixeira/aplicativos_com_ionic/
https://github.com/dannyserena
By Danielle Teixeira
Introdução sobre Aplicações Híbridas com Ionic Framework
Desenvolvedora front-end e mobile intusiasta IoT e UX/UI Design, compartilho minhas experiências profissionais