使用IC框架开发跨平台App的备忘录123
1,关于图标与启动屏幕
icon.png 192x192
splash.png 2208x2208
将这两个图片放在resources目录下,在终端执行:
ionic resources --iocn --splash
2,发布Android版本
cordova build --release android -- --ant
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore ./platforms/android/bin/MainActivity-release-unsigned.apk alias_name
rm ./fengkong.apk
/work/apps/android-sdk-macosx/build-tools/22.0.1/zipalign -v 4 ./platforms/android/bin/MainActivity-release-unsigned.apk ./fengkong.apk
生成签名文件my-release-key.keystore的命令:
keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
注:zipalign位于具体的API版本下。
3,发布iOS版本
使用xcode打开项目编译、发布。
4,关于跨域的处理
使用ionic serve --lab启动调试,可能会遇到跨域的安全问题。
在server nginx配置文件内添加:
location / {
add_header 'Access-Control-Allow-Origin' '*';add_header 'Access-Control-Allow-Credentials' 'true';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type';
proxy_pass http://127.0.0.1:9000;
}
- 启动Chrome:
- open /Applications/Google\ Chrome.app/ --args --disable-web-security
5,Service的写法
angular.module('starter.services', [])
.factory('Consts', function() {
// Might use a resource here that returns a JSON arrayreturn {
version: function() {
//同时修改config,package中的version
return 3.23;
}
};
});
6,一个$http get请求
$http.get(url)
.success(function(data, status, headers,config){
console.log('data success');
console.log(data); // object seems fine
})
.error(function(data, status, headers,config){
console.log('data error',data);
})
.then(function(result){
});
var confirmPopup = $ionicPopup.confirm({
title: '提示',
template: '发现了新版本,单击确定立即前往更新'
});
confirmPopup.then(function(res) {
if(res) {
if ( ionic.Platform.isIOS() ){
var iosUpdateUrl = "https://fir.im/37ew";
window.open(iosUpdateUrl,"_system","");
}else if( ionic.Platform.isAndroid() ){
var androidUpdateUrl = "https://fir.im/jca9";
window.open(androidUpdateUrl,"_system","");
}
} else {
console.log('You are not sure');
}
});
8,提示
$ionicPopup.alert({
title: '提示',
template: '未发现新版本'
});
使用IC框架开发跨平台App的备忘录123的更多相关文章
- 带你从零学ReactNative开发跨平台App开发(十一)
ReactNative跨平台开发系列教程: 带你从零学ReactNative开发跨平台App开发(一) 带你从零学ReactNative开发跨平台App开发(二) 带你从零学ReactNative开发 ...
- 带你从零学ReactNative开发跨平台App开发[react native SqlLite 终极运用](十二)
ReactNative跨平台开发系列教程: 带你从零学ReactNative开发跨平台App开发(一) 带你从零学ReactNative开发跨平台App开发(二) 带你从零学ReactNative开发 ...
- Sublime用户如何快速高效开发跨平台App
2015年9月15日,APICloud举办了一周年开源分享会,发布开源插件支持Sublime用户开发跨平台App,APICloud 开源技术负责人周兴海分享了Sublime关于插件方面相关的内容. S ...
- 带你从零学ReactNative开发跨平台App开发(二)
ReactNative跨平台开发系列教程: 带你从零学ReactNative开发跨平台App开发(一) 带你从零学ReactNative开发跨平台App开发(二) 带你从零学ReactNative开发 ...
- 带你从零学ReactNative开发跨平台App开发(一)
ReactNative跨平台开发系列教程: 带你从零学ReactNative开发跨平台App开发(一) 带你从零学ReactNative开发跨平台App开发(二) 带你从零学ReactNative开发 ...
- 带你从零学ReactNative开发跨平台App开发-[react native 仿boss直聘](十三)
ReactNative跨平台开发系列教程: 带你从零学ReactNative开发跨平台App开发(一) 带你从零学ReactNative开发跨平台App开发(二) 带你从零学ReactNative开发 ...
- 带你从零学ReactNative开发跨平台App开发(十)
ReactNative跨平台开发系列教程: 带你从零学ReactNative开发跨平台App开发(一) 带你从零学ReactNative开发跨平台App开发(二) 带你从零学ReactNative开发 ...
- 带你从零学ReactNative开发跨平台App开发(九)
ReactNative跨平台开发系列教程: 带你从零学ReactNative开发跨平台App开发(一) 带你从零学ReactNative开发跨平台App开发(二) 带你从零学ReactNative开发 ...
- 带你从零学ReactNative开发跨平台App开发[expo 打包发布](八)
ReactNative跨平台开发系列教程: 带你从零学ReactNative开发跨平台App开发(一) 带你从零学ReactNative开发跨平台App开发(二) 带你从零学ReactNative开发 ...
随机推荐
- NSInteger 和 int 区别
#if __LP64__ || (TARGET_OS_EMBEDDED && !TARGET_OS_IPHONE) || TARGET_OS_WIN32 || NS_BUILD_3 ...
- IP一些基础知识
1.主机IP地址 IP地址:internet上的每一台计算机都被赋予了唯一的32位Internet地址,简称ip地址. (1)IP地址的组成 IP地址由两部分组成,如图1 网络地址(net-ID) 主 ...
- idea 下的maven使用问题汇总
1,-Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable ...
- 避免使用CreateThread函数,导致的内存泄露
原文链接:http://blog.csdn.net/solosure/article/details/6262877
- PAT1038. Recover the Smallest Number
//意识到一个重要错误,一直以为atoi,itoa是windows独有的,linux下不可用,直到刚刚... //string+=比strcat好用多了,字符比较也方便的多,但是用scanf读入str ...
- dell n2000 组播抑制
http://en.community.dell.com/support-forums/network-switches/f/866/t/19677497 http://en.community.de ...
- python urllib urllib2
区别 1) urllib2可以接受一个Request类的实例来设置URL请求的headers,urllib仅可以接受URL.这意味着,用urllib时不可以伪装User Agent字符串等. 2) u ...
- js种的循环语句
//js种的循环语句 //while与do while的区别是while是满足条件后才执行 //do while是不管满不满足条件都会执行一次 //for 循环与while,do while相比循环结 ...
- 1. Hello UWP
1. UWP UWP,Universal Windows Platform,也就是 Windows 10 新推出的通用平台应用,只要一次编码,即可运行在 Windows 10 电脑以及手机上,甚至可以 ...
- Linux FTP服务器搭建与使用
一.vsftpd说明 LINUX下实现FTP服务的软件很多,最常见的有vsftpd,Wu-ftpd和Proftp等.Red Hat Enterprise Linux中默认安装的是vsftpd. 访问F ...