cordova如何修改足迹app安卓下载 app 目标版本

研究js、php等web相关技术上一篇介绍了cordova命令行,如果你和我一样是初学者,没有经验的话,请看这里回顾之前的文章:cordova 初识之命令行工具如何创建Android 应用这篇文章主要介绍下使用cordova创建Android的应用。原本我认为应该和ios一样简单,不过后面我发现错了,不是我想象中那样。我将我搭建的过程记录下来,作为经验记录,也希望对需要的朋友起到或多或少的帮助。如果说不考虑Android本身的SDK以及虚拟机的话,使用cordova创建Andorid应用会向下面这般简单# 进入app根目录
# 检查支持平台,如果有android,说明你可以开发android应用
cordova platforms list
# 创建应用
cordova platform add android
# 启动虚拟机
cordova emulate android但是,这个前提是你本身已搭建好了Android开发环境,如果没有,抱歉,你会和我一样出现类似下面的错误提示:Error: The command “android” failed. Make sure you have the latest Android SDK installed怎么办呢?参考官方的文档 [],下面开始说说搭建Android开发环境搭建Android开发环境我是Mac系统,网上大多都是linux和windows的教程,这里我就不考虑了,我只记录mac下搭建过程第一步、下载SDK请在官方网站下载SDK由于我是初学者,SDK该下哪个神马的,就不考虑了。如果你也和一样傻傻分不清,那么推荐直接下载默认的 Download Eclipse ADT我下的压缩包名称为:adt-bundle-mac-x86_64-,其分别对应SDK名称:adt-buudle操作系统:mac-x86_64版本:第二步、设置SDK环境下载好压缩包并解压缩后,根目录会有两个子目录,分别为eclipse:编辑器sdk:SDK目录将SDK目录拷贝到指定位置,我这里设置到Mac当前用户的家目录cp /adt-bundle-mac-x86_64-/sdk
~/Development/adt-bundle设置PATH环境$ vi ~/.bash_profile末尾添加SDK路径 export PATH=${PATH}:$HOME/Development/adt-bundle/sdk/platform-tools:$HOME/Development/adt-bundle/sdk/tools执行生效source ~/.bash_profile那到这里就完事了吗?朋友,告诉你,还没到一半,接着往下看吧第三步,安装环境需要的软件及SDK安装ant(如果你没有安装过的话)这里我通过Mac的homebrew进行安装,如果你不了解可以看看这篇文章Mac开发者利器-Homebrew介绍及安装在终端里,执行下面命令安装antbrew install ant安装SDK执行下面命令,打开 Android SDK Manager傻眼了吧,这么多,装哪些?别急,我也傻眼了,所以中间装了好多才成功,我这里总结下,但是可能不对,但是管他呢,作为初学者,这样至少能成功。如果你有好的文章,可以推荐给我。如果你无法安装SDK,报dl-ssl连接不上的错,那么你可参考下面的文章修改本地HOSTS不用翻墙,即可访问google等网站hosts,及修改方法我安装的SDK如下:Tools下所有SDK,都安装了没有原因,都装,我这里十来个,不知道干嘛的Android L (API 20, L preview)我本地的cordova当前使用的SDK是4.4.2,可能还没来得及更上版本,但是我看默认选中了几个项目,所以我这里就按照默认选中的那几项安装,包含有SDK Platform Android L previewAndroid TV ARM EABI v7a System imageAndroid TV Intel x86 Atom System imageARM EABI v7a System imageIntel x86 Atom System imageAndroid 4.4w (API 20)SDK Platform AndroidAndroid Wear ARM EABI v7a System imageAndroid Wear Intel x86 Atom System imageAndroid 4.4.2 (API 19)SDK Platform AndroidARM EABI v7a System imageIntel x86 Atom System imageGoogle APIs (x86 System Image)Google APIs (ARM System Image)上面的目录只是作为参考,并不是绝对的,最主要的SDK是Tools及API19,因为目前cordova使用的SDK就是API19,以后会根据情况改变几个我碰到的问题,及解决方法问题1:Error: Please install Android target 19 (the Android newest SDK). Make sure you have the latest Android tools installed as well. Run “android” from your command-line to install/update any missing SDKs or tools.解决方法:安装 android 4.4.2 sdk问题2:This platform has more than one ABI.这个问题,可能是因为你本地环境中没有AVD模拟器,而如何创建AVD模拟器,咱稍后说,你先确保相应的SDK是否有安装好,即android 4.4.2 sdk中的System image。第四步、创建AVD模拟器看到现在,你是否和我一样,有种累觉不爱的感受。表急,这是最后一步了。什么是AVD模拟器?你可以将其当做为虚拟机,可以根据操作系统,OS版本而产生的不同的虚拟机1.查看当前支持版本 (在列出的版本中我们需要记住id值,这个值在第2步中使用):android list targets这是我本地情况Available Android targets:
----------
id: 1 or "android-19"
Name: Android 4.4.2
Type: Platform
API level: 19
Revision: 3
Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800, WXGA800-7in
Tag/ABIs : default/armeabi-v7a, default/x86
----------
id: 2 or "android-20"
Name: Android 4.4W
Type: Platform
API level: 20
Revision: 1
Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800, WXGA800-7in, AndroidWearRound, AndroidWearSquare, AndroidWearRound, AndroidWearSquare
Tag/ABIs : android-wear/armeabi-v7a, android-wear/x86
----------
id: 3 or "android-L"
Name: Android L (Preview)
Type: Platform
API level: L
Revision: 3
Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800, WXGA800-7in
Tag/ABIs : android-tv/armeabi-v7a, android-tv/x86, default/armeabi-v7a, default/x86
----------
id: 4 or "Google Inc.:Google APIs:19"
Name: Google APIs
Type: Add-On
Vendor: Google Inc.
Revision: 7
Description: Android + Google APIs
Based on Android 4.4.2 (API level 19)
Libraries:
* com.google.android.media.effects (effects.jar)
Collection of video effects
* com.android.future.usb.accessory (usb.jar)
API for USB Accessories
* com.google.android.maps (maps.jar)
API for Google Maps
Skins: WXGA720, WVGA854, QVGA, WVGA800 (default), WSVGA, WXGA800-7in, WXGA800, WQVGA432, HVGA, WQVGA400
Tag/ABIs : default/armeabi-v7a
----------
id: 5 or "Google Inc.:Google APIs (x86 System Image):19"
Name: Google APIs (x86 System Image)
Type: Add-On
Vendor: Google Inc.
Revision: 7
Description: Android x86 + Google APIs
Based on Android 4.4.2 (API level 19)
Libraries:
* com.google.android.media.effects (effects.jar)
Collection of video effects
* com.android.future.usb.accessory (usb.jar)
API for USB Accessories
* com.google.android.maps (maps.jar)
API for Google Maps
Skins: WXGA720, WVGA854, QVGA, WVGA800 (default), WSVGA, WXGA800-7in, WXGA800, WQVGA432, HVGA, WQVGA400
Tag/ABIs : default/x862.1 创建AVD:$ android create avd –n AVD-API16 –t 4-n:AVD的名称,自定义-t:最后的4表示创建Android版本的avd我这里为什么选择4?作为初学者,我也不知道选什么,但是我直觉告诉我有这么几个原因一定得是 Android 4.4.2 (API level 19)必须是 ARM 而不是Inter Atom,或是X86什么的如果你也像我一样不知道如何选择,那么你可以一个个试试看2.2 创建带SD卡的模拟器:2.2.1 创建镜像文件$ mksdcard 128M sdcard.img2.2.2 创建AVD$ android create avd -n AVD-API16 -t 4 -c &The path to SD&3. 查看是否创建成功$ android list avd如果成功会显示刚才我们创建的avd信息Available Android Virtual Devices:
Name: AVD-API16
Path: /Users/liwei/.android/avd/AVD-API16.avd
Target: Google APIs (Google Inc.)
Based on Android 4.4.2 (API level 19)
Tag/ABI: default/armeabi-v7a
Skin: WVGA8004. 启动AVD模拟器$ emulator -avd AVD-API16或者$ emulator @AVD-API165. 删除AVD模拟器:$ android delete avd -n AVD-API16我碰到的问题在我创建好AVD后,一开始我使用的ID是5,通过cordova启动Android虚拟机出现错误emulator: Failed to open the HAX device!说明创建的AVD并不能被cordova项目所使用解决办法:删除刚才创建的AVD创建一个新的AVD,ID为4总结若以上准备工作都完成了,那么恭喜你,输入命令,启动你的Android虚拟机吧$ cordova emulate android整个流程如下:下载SDK放置特定目录,并设置环境变量Android安装所需SDKAndroid创建AVDcordova创建Android项目cordova启动虚拟机亲,你成功了嘛,如果你有什么建议或问题,别忘了留言哦,最后希望你能关注我的博客哦~~最后,有什么问题,大家可以给我留言哦,别忘了关注我的博客哦:
此条目发表在分类目录,贴了, , , 标签。将加入收藏夹。
亲,加个关注呗~在线工具
热评文章功能Cordova&非CLI的环境搭建(WIN+ANDROID)
赞一下,侃船老湿的handout总结的简单而且易理解。直接拿来翻一下分享给正在学手机开发的童子们。
如何配置ADT,如何使用安卓模拟器,请百度先。建议还是使用真机测试。
(CLI环境搭建请参考
连接&/blog/2016364)
以下环境搭建的思想就是,在ADT里先创建一个自己的安卓空白项目,再导入一个cordova默认安卓项目。将cordova项目中的一些关键文件复制到自己的安卓项目。然后配置自己安卓项目的main
activity java代码,建立WWW文件夹和WEB首页,之后就可以生成APP导入虚拟机或真机测试了。
对于对CLI(command-line
tools)不熟悉的童鞋们,这个搭建过程比较直观一点。
一、在ADT创建新安卓项目(过程略)
假设您创建的安卓项目名称为:MyFirstApp
二、导入Cordava项目模版,下载Cordava发布包
发布包下载地址:http://archive.apache.org/dist/cordova/
,解压到指定地址
找到进入解压文件夹&"cordova-3.4.0".找到压缩文件并解压:&"cordova-android.zip".(此为cordova的安卓DEMO项目)
Eclipse ADT.导入项目,选择解压的"cordova-android.zip"文件夹。导入时记得选择"Copy
projects into workspace"。
4.导入完成后,在导入的CORDOVA项目中的bin文件夹内,有"cordova.jar"文件。
三、在已有的自定义安卓项目中(第一步),集成cordava(复制项目模版下的相关文件到MyFirstApp)
右键点击MyFirstApp项目,并创建普通文件夹:assets, 在该文件夹下创建子文件夹:www
2.&复制Cordova项目中assets\www\下的"cordova.js"文件到"MyFirstApp"项目下的assets\www\中。
复制Cordova项目中的bin文件夹内d&"cordova.jar"文件到"MyFirstApp"项目下的libs下(libs文件夹如果没有就自己创建),并导入到Build
复制Cordova项目中的"res"文件夹下的"xml"文件夹到"MyFirstApp"项目下的"res"文件夹下。
复制页面代码到MyFirstApp项目下:MyFirstApp\assets\www\...
四、调整"MyFirstApp"项目入口Java文件代码(main Activity)
1.打开MainActivity.java,导包:import
org.apache.cordova.DroidG
2.修改onCreate方法:
3.修改AndroidManifest.xml文件,给安卓app增加internet权限:
4. 运行MyFirstApp项目进行测试。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。PhoneGap的生成XML请求-拦截和修改JavaScript代码从PhoneGap的Android应用程序
休耕代码从一个XML文件中。
它在我的笔记本电脑和装载文件直接在文件浏览器中。
但是它不与通过的PhoneGap构建创建一个应用程序的工作。
我正在使用的Android 4.3。希望知道答案。
var Connect = new XMLHttpRequest()
Connect.open("GET", "data/test.xml", false);
Connect.setRequestHeader("Content-Type", "text/xml");
Connect.send(null);
var TheDocument = Connect.responseXML;
var workid = TheDocument.childNodes[0];
for (var i = 0; i & workid.children. i++)
var id = workid.children[i];
var Name = id.getElementsByTagName("title");
document.write(Name[0].textContent.toString());
希望能帮到你!----------语境
我目前正试图以设计为混合Android应用程序模型生成。的目标如下:给定的任何混合Android应用程序的PhoneGap,生成描述用户界面的状态的用户界面模型(在这种情况下,我处理UI状态等同于DOM的状态)和跃迁到这些用户界面状态(记通过行动-例如,点击DOM X)。该模型是由一个有限状态机,其中所述节点是用户界面的状态,并且边缘的转换来表示。
我现在的任务是要了一个办法找出一个DOM是否有注册到它的事件处理程序(让我们现在,我们只在最初的DOM状态感兴趣)。有了这个StackOverflow的答案的帮助下 CodeGo.net,我能一个解决方案webView.loadURL(“JavaScript的:”+...),以确定是否有注册到它的事件或者例如,或通过类似图书馆提供jQuery和原型。不过,我目前无法确定是否有通过调用addEventListener(其中注册的事件),因为在StackOverflow的答案特定的原因。 (同样,为了简单起见,让我们我们只关心在页面加载之后注册的事件,之前的相互作用)。
我打算采取的做法如下:我打算从PhoneGap的应用程序拦截的JavaScript代码.a旦截获,我将代码(例如,使用rhino),使得每个调用addEventListener()之后,我将会把一个“标记”为参与该调用DOM中。然后,我将这段代码传递给web视图,以便它是被加载,而不是原来的JavaScript代码,这段JavaScript代码。通过这样做,我能确定的addEventListener()来调用的。这看起来非常简单,但问题是,我不能想出一个办法来拦截的JavaScript代码,并通过该代码,以便它被代替原来的加载。是否有任何工具所描述,将做到这一点拦截和传球,?顺便说一句,我的Android模拟器来运行PhoneGap的应用程序。
是否还有其他的办法,也许更简单(或者更优雅),我应该考虑什么?
本文地址 :CodeGo.net/4000999/
-------------------------------------------------------------------------------------------------------------------------
1. 对于有问题的其他人:知道了下面的代码。
function loadXMLDoc(dname)
if (window.XMLHttpRequest)
xhttp=new XMLHttpRequest();
xhttp=new ActiveXObject("Microsoft.XMLHTTP");
xhttp.open("GET",dname,false);
xhttp.send();
return xhttp.responseXML;
&div class="frame"&
xmlDoc=loadXMLDoc("test.xml");
x=xmlDoc.getElementsByTagName("title");
document.write(x[0].childNodes[0].nodeValue);
alert('loaded');
----------1. 该解决方案,我与如下。我创建了一个新的CordovaWebViewClient(传递活性和web视图对象的CordovaWebViewClient构造函数),其中onPageStarted()方法被重写。该onPageStarted()代码将执行一次的HTML页面中的混合应用程序已经开始加载。压倒一切的代码执行以下操作:
检索刚开始加载页面时,相对于该assets文件夹(其中所有的HTML / JS / CSS文件都被找到.net址中的一个的网址onPageStarted()的,所以你可以通过简单地访问该实例的值检索:如果HTML文件位于assets/相对URL是
通过检索,通过建立一个输入流的HTML代码activity.getAssets().open(relativeUrl)其中activity是当前的DroidGap活动,relativeUrl是在步骤中找到的相对URL。
解析HTML代码到Document对象(Jsoup做到这一点)。
CodeGo.net,通过存储新的代码在准备要添加的(如JS代码String对象),并插入新的JS代码作为一个新的脚本标记的一部分Document对象。 (就我而言,我插入了新的脚本标记在在HTML的开始head重新转换的modifiedDocument对象转换为String(比方说我们把这个字符串newHTML),并调用loadDataWithBaseURL()方法如下:webView.loadDataWithBaseURL("file:///android_asset/www/", newHTML, "text/html", "UTF-8", null)。这从本质上重新加载页面,尽管该代码包括在内。
然后,我设置这个延长CordovaWebViewClient作为web视图对象的新的web视图客户端端(使用webView.setWebViewClient()法)。最后,我打电话webView.reload()使Web视图客户端端更改上面的花费生效。这样一来,每一个新的HTML页面加载在网页视图中,onPageStarted代码我写将执行。
请注意,由于项目#5“为基础URL和HTML是由字符串加载,你还应该包括你的支票压倒一切的开始onPageStarted()方法以确保在刚开始加载页面的URL不等于基本URL(即检查该URL是不完全等于否则,你会遇到一个无限循环。(我也指示onPageStarted只要网址不以这是预期基本文件夹)不执行。
本文标题 :PhoneGap的生成XML请求-拦截和修改JavaScript代码从PhoneGap的Android应用程序
本文地址 :CodeGo.net/4000999/
Copyright (C) 2014 CodeGo.net 沪ICP备号 联系电邮: (#=@)一个基于ionic框架和AngularJS的跨平台(iOS,Android) APP
-------------
新增文件夹...
新增文件夹
(多个标签用逗号分隔)
使用HTML5和CSS来开发手机应用,一直是广大前端开发者的理想,并且已经有不少解决方案了。例如
PhoneGap(用javascript来调用设备原生API)
JQuery Mobile(UI库)
Titanium(混合方式)
AppCan(国产的开发工具)
Ionic是一个轻量的手机UI库,具有速度快,界面现代化、美观等特点。为了解决其他一些UI库在手机上运行缓慢的问题,它直接放弃了IOS6和Android4.1以下的版本支持,来获取更好的使用体验。
首先应该安装好 node.js (略),然后安装cordova、ionic等
sudo npm install -g cordova ionic ios-sim
创建不同类型的项目
目前可以用blank,tabs,sidemenu三种
ionic start myApp tabs
cordova plugin add com.ionic.keyboard && cordova plugin add org.apache.cordova.console && cordova plugin add org.apache.cordova.device && cordova plugin add org.apache.cordova.device-motion && cordova plugin add org.apache.cordova.file && cordova plugin add org.apache.cordova.file-transfer && cordova plugin add org.apache.cordova.geolocation && cordova plugin add org.apache.cordova.inappbrowser && cordova plugin add org.apache.cordova.network-information && cordova plugin add org.apache.cordova.splashscreen && cordova plugin add org.apache.cordova.camera && cordova plugin add com.google.cordova.admob
ionic platform add ios
ionic build ios
ionic emulate ios #会打开ios的模拟器
ionic run andoird #真机测试,需要先platform add andoird和build android
ionic serve #也可以先在浏览器里看效果,如果chrome安装了livereload插件,可以实现代码编辑时界面即时变化 直接编辑IOS或Android工程
可以直接用xcode或其他IDE来编辑 /platforms/xxxx/ 下的工程,但要注意的是,应该以项目根目录下的 /www/ 文件为主,而不要编辑/platforms/ios/www/ 里的文件。运行下面的命令会自动用 /www/ 覆盖 /platforms/ios/www 里的文件
cordova prepare ios
www文件夹结构与文件分析
发布应用在生成之前,去掉不需要的插件
cordova plugin rm org.apache.cordova.console
发布到android 未完签名。
项目主页:
相关资讯  — 
相关文档  — 
发布时间: 15:24:18
同类热门经验
18457次浏览
14435次浏览
13267次浏览
18212次浏览
16359次浏览
6414次浏览
OPEN-OPEN, all rights reserved.数据库错误
建立数据库连接时出错}

我要回帖

更多关于 安卓app制作软件 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信