• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

jtomaszewski/ionic-cordova-gulp-seed: Ionic & Cordova & Gulp combo-seed ...

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称(OpenSource Name):

jtomaszewski/ionic-cordova-gulp-seed

开源软件地址(OpenSource Url):

https://github.com/jtomaszewski/ionic-cordova-gulp-seed

开源编程语言(OpenSource Language):

CoffeeScript 63.0%

开源软件介绍(OpenSource Introduction):

Features

  • Application can be run in a local http server, or emulated/released to Android/iOS
  • A lot of useful gulp tasks, like:
    • gulp - watch for changes + browser-sync (http server with livereload) + weinre debugger
    • gulp cordova:emulate:ios - run application in iOS emulator
    • gulp cordova:run:android - run application on Android's devise
    • Run gulp help or see gulp/tasks.coffee for more information about all tasks
  • Useful hooks and tweaks, which allow you to deploy your cordova app out-of-the-box
  • SASS + CoffeeScript + Jade combo
  • Support for multiple environments, like development, staging, production (configuration available in gulpfile.coffee)
  • Tests configured and working: unit (karma + mocha) and end to end (protractor)
  • Rollbar support (configured, working in angular functions and support for uploading the sourcemaps to Rollbar server)

Requirements

  • NodeJS
  • Cordova 4.2+
  • Android or iOS SDK installed and configured (required only if you want to deploy the app to native mobile platforms - you can run gulp server without that)

How to install

git clone jtomaszewski/ionicstarter-mobile
cd ionicstarter-mobile
git submodule update --init --recursive

# install dependencies
npm install
npm install -g gulp
bower install
brew install imagemagick # or `apt-get install imagemagick`, if you're on linux

gulp # build www/ directory and run http server on 4440 port

If you get "too many files" error, try: ulimit -n 10000. You may want to add this line to your .bashrc / .zshrc / config.fish.

What does the gulp build do?

More or less:

  • All .scss, .coffee, .jade files from app/ will be compiled and copied to www/
  • All .ejs files from assets/ will be compiled to www/.
  • All other files from assets/ will be copied to www/.

For detailed description, see gulpfile.coffee.

P.S. www/ is like dist/ directory for Cordova. That's why it's not included in this repository, as it's fully generated with gulp.

Testing

Requirements: installed PhantomJS and configured selenium standalone webdriver.

Unit tests (karma & PhantomJS/Chrome)

gulp test:unit # using PhantomJS
gulp test:unit --browsers Chrome # or using Google Chrome

e2e tests (protractor & selenium)

gulp # your www/ directory should be built and served at :4400 port
node_modules/.bin/webdriver-manager start & # run selenium server in the background

gulp test:e2e # finally, run e2e tests

How to run on mobile?

I recommend tmux for handling multiple terminal tabs/windows ;)

  1. Copy .envrc.android-sample or .envrc.ios-sample to .envrc and configure it.
  • Ofcourse, if you're a Mac user and you can compile both Android and iOS on the same machine, you can include all the variables from both of these files in only one .envrc .

  • Also, make sure you have all the keys and certificates needed stored in keys/android/ and keys/ios/:

    • keys/android/ionicstarter.keystore
    • keys/ios/ionicstarter_staging.mobileprovision
    • keys/ios/ionicstarter_production.mobileprovision
  1. Ensure, you have configured ios/android platform with Cordova, f.e. by running gulp cordova:platform-add:[ios|android].

  2. Run gulp cordova:emulate:[ios|android] or gulp cordova:run:[ios|android].

Releasing to appstores

First, generate the certificate keys:

Android

  1. Generate .keystore file: keytool -genkey -v -keystore keys/android/$ANDROID_KEYSTORE_NAME.keystore -alias $ANDROID_ALIAS_NAME -keyalg RSA -keysize 2048 -validity 10000

iPhone

  1. Create a certificate and a provisioning profile, as it's described here.

  2. Download the provisioning profile and copy it into keys/ios/, so it will match the IOS_PROVISIONING_PROFILE file set up in the gulpfile.coffee.

Then, generate the application and deploy it to the webserver with:

gulp release:[ios|android] --env=[staging|production]



鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap