ionic 开发小问题集锦


1. ionic默认的很多配置在android和ios系统都是不一样的,因此开发的时候一定要注意,对ionic的配置进行更改,在app.js中利用$ionicConfigProvider 修改

①tabs的位置,android默认在顶端,ios默认在底端

②tabs的类型,android默认是striped(条纹状),ios 默认是standard

   想将android中的默认样式都修改掉:

.config(['$ionicConfigProvider', function($ionicConfigProvider) {
    $ionicConfigProvider.tabs.position('bottom'); 
    $ionicConfigProvider.tabs.style('standard');
}])
 
2. 遇到不同平台不同分辨率情况下要显示不同的icon 和splash图片,因此如果要自己手动生成太过麻烦,ionic 提供了cli命令可供我们上传相应的图片自动生成不同的尺寸并放在不同的platform下,以及更新对应的config.xml  文件。
     (1) 首先选择两幅图片(.png, psd, ai)不同的格式都可以,放在resources 目录的根目录下面,注意因为是以这两幅图为基础生成不同尺寸的图片,所以这两幅图应该是所要求的最大尺寸的图片,因此,icon.png  尺寸最小在192x192px,并且没有圆角;splash文件最小在2208x2208px,并且最好图片居中设计。
    (2) 执行更新资源代码 
$ ionic resources --icon
$ ionic resources --splash
当然也可以同时更新
$ ionic resources 
3.在安装到安卓device的时候有时候会出现错误如下:
 Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]
在Google以后有人提出来应该先卸载手机上的apk, 原因可能是
if a previously installed 
package of the same name has a different signature than the new package 
(and the old package's data was not removed).
经过尝试果然是这样!应该是之前更改了应用的一些系统信息造成的。
 
4. 在ionic项目中洪用到sqlite但是调试是报错如下:
 
Uncaught TypeError: Cannot read property 'openDatabase' of undefined
这可能是以下原因:
   1).You are not wrapping the $cordovaSQLite methods in the $ionicPlatform.ready() function.
     2). You are trying to test this native plugin from a web browser
     3)You have not actually installed the base SQLite plugin into your project.
发现直接在手机上运行时没问题的,确实如上面第二条所说,我在浏览器上调试试图访问这个原生的插件

5. 在ionic开发时会安装很多外部的插件,但是这些插件在git的时候一般不会push上去,往往都会被忽略掉,
为了其他小伙伴pull代码后能够使用,需要将所用的platform 和plugin保存起来
cordova plugin save
<span style="font-family: monospace; white-space: pre; background-color: rgb(240, 240, 240);">cordova platform save</span>
这样会发现在config.xml中就保存了相应的插件名和地址等,
其他人pull或者clone代码后必须 cordova prepare一下就好了

 
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值