创建一个 tabs 布局的项目 1. 创建一个防止所有同类工作的工作目录,例如:ion20151228 2. 进入控制台(命令行)方式,进入该工作目录,例如:cd ion20151228 3. 创建一个ionic项目:ionic start test20160729 tabs 4. 打开 webstorm,open刚才的项目 test20160729
1、增加 platforms,预编译、编译
sudo cordova platforms add android
sudo cordova prepare android
sudo cordova compile android
2、然后运行
android:
sudo cordova run --device android
苹果(需要安装 ios-deploy)
sudo cordova run --device ios
3、aplash 图片变成了 cordova 雀圣的图片
4、app 图标也变成了 cordova 雀圣的图片
1 查询支持的平台是否包括浏览器
sudo cordova platform list
2 增加 browser 平台
sudo ionic platform add browser
或 sudo cordova platform add browser
3 预编译,没有发现什么变化
sudo ionic prepare browser
4 编译,
sudo ionic compile browser
结果生成了一个 platforms/browser/build/package.zip
但是,解压错误!"无此文件或目录",以后再处理
5 查看所有使用的插件
sudo cordova plugin ls
1 如果本次有修改,先执行
sudo ionic prepare android
然后运行
android:
sudo ionic run --device android
苹果(需要安装 ios-deploy)
sudo ionic run --device ios
1 单独使用 Android device monitor,因为Webstorm 没有集成进去
2 位置: 找到 android SDK 安装目录,在tools目录下的 monitor就是!
*** 例如:我的位置在这里 /Users/dhbm/Downloads/android-sdk_r24.0.1-macosx/android-sdk-macosx/tools
*** 不要手工修改 platforms 目录下的内容,那些都是自动生成的
*** 除了这个之外: \platforms\android”下面新建一个release-signing.properties
内容如下
*****
key.store=/Users/dhbm/DeskTop/Android/dhbm.keystore
key.alias=dhbm.keystore
key.alias.password=www.dhbm.cn
key.store.password=www.dhbm.cn
*****
cordova build android --release
生成的 apk位置:
/Users/dhbm/Desktop/pg2015122401/platforms/android/build/outputs/apk/android-release.apk
1、参考 http://jingyan.baidu.com/article/c35dbcb0ec59438916fcbcaf.html
### 修改config.xml(假设创建项目时,没有加上包名等参数)
包名:widget id="com.dhbm.demo123"
版本号:version="0.0.1"
程序名:<name>IonicDemo</name>
程序简介:<description> IonicDemo by wzh 20160116 </description>
2、怎么直接设置编译出来的 apk 文件名?(不是上面说的 程序名、app名)待处理
cordova compile -help 没有发现有这个选项,就只好每次都 rename,当然只在 release 的时候才真的需要
3、程序图标:resources 目录下 android 目录 icon 目录
4、启动画面 splash : resources 目录下 android 目录 splash 目录
1、增加 platforms,预编译、编译
sudo ionic platforms add android
sudo ionic prepare android
sudo ionic compile android
2、运行结果,列表数据不出来,说明无法访问外网(404)
3、增加白名单
cordova plugin add cordova-plugin-whitelist
ionic plugin add cordova-plugin-whitelist
4、在 index.html 首页增加 meta项, 设置安全性
<meta http-equiv="Content-Security-Policy"
content="script-src * ‘unsafe-eval‘; connect-src * ‘unsafe-eval‘;
object-src ‘self‘; style-src * ‘unsafe-inline‘; img-src *" >
以上 meta 加上之后会报错,难道我copy错了?但是测试发现,不用加这个meta
5、ion-infinite-scroll有bug,
将services中,首次读取数据改成15条,保证超出一屏所能显示的条数
将每次上拉刷新的条数也改成10条
6、修改过 html之后,不用重新增加 platforms,直接预编译、编译
7、列表ok,点击详细ok,幻灯ok!
8、修改 sliders.html 之后,预编译发现,platforms 中对应的 sliders.html 也变化了!
原来预编译干这个的!
9、测试jQuery 页面,那个WX年代就停留在 0%,为什么呢?
创建方式 $ ionic start ionic1Demo20161209 tabs blank
1、www目录没有创建 template 模板目录
2、主页 index.html 的body 部分只有一个简单的 panel,没有 ion-nav-view 的UI-Router
3、主程序 app.js 中,只有app的controller(这里叫做starter),并且没有任何注入参数
----因此,这里没有 controller.js,来扩展 starter.controllers
----没有初始化的残路,例如:sidemenu项目中的 playlists 和 loginData 以及 login 对应的 $ionicModal
----主页UI没有任何 href或者button等,也就不需要定义那些对象的controller,例如:tabs项目中的 ChatsCtrl、ChatDetailCtrl
4、没有状态机路由 $stateProvider
5、没有 url 路由 $urlRouterProvider,所以主页就是 index.html里面的那个 panel,不会调准到某个模板去
6、没有自定义任何指令,例如:tabs中的sevices里面的factory方式的 chats
1、我这里直接使用Webstrom创建了
2、CLI方法 cordova create hello com.example.hello HelloWorld
1、安装 nodejs
2、安装JAVA
3、安装 android sdk tools
4、安装ANT
这个不需要了!
5、安装 Xcode
npm root
n stable
node -v
npm -v
ionic -v
cordova -v
n stable
sudo npm update -g npm
sudo npm update ionic -g
sudo npm update -g
sudo npm install -g ionic
sudo npm install
sudo cordova platform list
我的电脑结果:
Available platforms: amazon-fireos, blackberry10, browser, firefoxos, osx, webos
ionic platform add android
ionic platform add ios
** githubs 需要翻墙
** 有时需要2-3次才能完成
Web发布
sudo ionic platform add browser
或 sudo cordova platform add browser
1、 sudo ionic build android 等效于: sudo ionic prepare android sudo ionic compile android
cordova prepare android --release
cordova compile android --release
2、sudo ionic build ios
等效于:
sudo ionic prepare ios
sudo ionic compile ios
或
sudo cordova prepare ios
sudo cordova compile ios
sudo ionic platform add browser
或 sudo cordova platform add browser
sudo ionic prepare browser
sudo ionic compile browser
直接打开 index.html,在浏览器运行
*** 不要修改platforms下面的www目录,自动生成的
*** 再次将整个目录权限都改成 可读写(mac必须root权限),因为这次又自动生成了android目录
### 使用以上增加平台、编译生成
主文件在 :MainActivity.java
debug apk文件在 ../platforms/android/build/outputs/apk/android-debug.apk
未签名 apk 位置
../platforms/android/build/outputs/apk/android-release-unsigned.apk
参考 http://rensanning.iteye.com/blog/2030516
### 最终方案 : \platforms\android”下面新建一个release-signing.properties
内容如下
*****
key.store=/Users/dhbm/DeskTop/Android/dhbm.keystore
key.alias=dhbm.keystore
key.alias.password=www.dhbm.cn
key.store.password=www.dhbm.cn
*****
cordova build android --release
生成的 apk位置:
/Users/dhbm/Desktop/pg2015122401/platforms/android/build/outputs/apk/android-release.apk
参考 http://www.tuicool.com/articles/eEj2Q3
Proguard 会混淆cordova及其插件的java代码,导致apk运行时报 cordova error initial class,
解决办法是在proguard-project.txt 加入下面的内容,不混淆cordova及其插件
-keep class org.apache.cordova.** { *; }
-keep public class * extends org.apache.cordova.CordovaPlugin
参考 http://lzw.me/a/cordova-3-5-android-apk-signed.html
文件 ant.properties 怎么不行?待处理
*** 不要修改platforms下面的www目录,自动生成的
*** 最好将整个目录权限都改成 可读写(mac必须root权限)
使用以上增加平台
直接生成ipa以及导入到xcode,待处理
*** 不会自动产生 platforms 目录,请在terminal下cli方式增加
### 增加3种平台方法
sudo ionic platforms add android
sudo ionic platforms add ios
sudo ionic platforms add browser
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )