cordova可以做到一次编写到处运行各个平台(android、ios、wp、bb、firefoxos、web等几乎所有平台)

手上只有一个android手机 ,安装的时候没有那么顺利,第一大问题就是网络问题,需要FQ

按照官方提示http://cordova.apache.org/#getstarted

1、首先安装node.js

参考:http://www.cnblogs.com/zhishuai/articles/8138046.html

curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
sudo yum -y install nodejs

2、安装cordova

npm install -g cordova

3、创建一个应用、添加android平台

cordova create MyApp 
cd MyApp
cordova platform add

备注:查看平台命令

cordova platform

出现如下平台

Installed platforms:
  android 7.0.0
Available platforms:
  browser ~5.0.1
  ios ~4.5.4
  osx ~4.0.1
  windows ~5.0.0
  www ^3.12.0
4、编译android版本的时候问题来了 ,提示android环境没有安装

cordova run android

Android Studio project detected
(node:30829) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): CordovaError: Failed to find 'ANDROID_HOME' environment variable. Try setting it manually.
Failed to find 'android' command in your 'PATH'. Try update your 'PATH' to include path to valid SDK directory.
(node:30829) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
[app@localhost test]$ cordova run android
Android Studio project detected
(node:19379) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): CordovaError: Failed to find 'ANDROID_HOME' environment variable. Try setting it manually.
Failed to find 'android' command in your 'PATH'. Try update your 'PATH' to include path to valid SDK directory.
(node:19379) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
[app@localhost test]$ echo $ANDROID_HOME
各种环境变量找不到
 1、java没装

2、android没装

------------------------------安装android开发依赖环境----------------------------------------------------

1、安装 java

这里下载jdk:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

http://download.oracle.com/otn-pub/java/jdk/8u151-b12/e758a0de34e24606bca991d704f6dcbf/jdk-8u151-linux-x64.rpm?AuthParam=1514477816_4cd93965dc16fe41a06d861aeab9a333

rpm -ivh jdk-8u151-linux-x64.rpm

设置环境变量

vim ~/.bash_profile

添加:

export JAVA_HOME=/usr/java/jdk1.8.0_151

保存退出后 使环境变量生效

source ~/.bash_profile

2、安装android

下载android-studio

翻墙速度有点慢 花了好一会时间 理论上国内有下载好的 之后我也会分享到我的百度云

链接: https://pan.baidu.com/s/1qXTRMfq 密码: jisc

https://developer.android.com/studio/index.html#downloads

解压并运行

android-studio/bin/studio.sh

启动会自动下载 sdk ,但是默认只下载最新的sdk  我的cordova就不能用 需要手动下载对应老一个版本的sdk 。android-studio左上角有一个下载箭头+android的一个图标,点击可以勾选下载对应的sdk

设置环境变量

默认下载到当前用户下$HOME/Android/Sdk

设置环境变量

vim ~/.bash_profile

添加:

export ANDROID_HOME=$HOME/Android/Sdk

保存退出后 使环境变量生效

source ~/.bash_profile

-----------------------------------接着cordova---------------------------------------------------------

cordova run android

会默认下载各种环境,最后下载完之后会生成一个apk  最终生成在 工程名test/platforms/android/app/build/outputs/apk/debug/app-debug.apk

我的输出:

...

BUILD SUCCESSFUL in 25s
47 actionable tasks: 47 executed
Built the following apk(s):
    /home/app/src/test/platforms/android/app/build/outputs/apk/debug/app-debug.apk
ANDROID_HOME=/home/app/Android/Sdk
JAVA_HOME=/usr/java/jdk1.8.0_151
No target specified and no devices found, deploying to emulator
(node:24975) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): CordovaError: No emulator images (avds) found.
1. Download desired System Image by running: /home/app/Android/Sdk/tools/android sdk
2. Create an AVD by running: /home/app/Android/Sdk/tools/android avd
HINT: For a faster emulator, use an Intel System Image and install the HAXM device driver

(node:24975) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

-----------------------------------------------------------------------------------------

在下载好的sdk里面有一个/home/app/Android/Sdk/platform-tools 文件夹 里面有adb命令
可以把adb添加到环境变量里面,就可以直接使用了

连上手机,进入apk目录

adb install app-debug.apk

就可以在手机上看到了

之后就可以在工程目录下面有个www文件夹里面写html+js内容了。

一次编译 至少在android上能跑了……

cordova linux 安装并编出第一个demo-android的更多相关文章

  1. 2013年Linux周刊读者投票出炉 Ubuntu、Android榜上有名

    摘要:一年一度的Linux周刊读者投票结果已经登于2013第12期.这是Linux爱好者们自己的“奥斯卡”: Linux周刊的小编们列出一系列Linux相关的“最佳项目”进行面向读者的投票.竞选项目包 ...

  2. linux经常使用(一)linux 安装配置 jdk之 找不到安装文件文件夹及source /etc/profile 报unexpected end of file 错误 解决

    linux 安装配置 jdk 应该算是一个非常主要的东西.可是我到如今才自己第一次 正式安装.果然出现了问题.. 问题就是 安装之后 找不到 安装路径 ,进而没法配置环境变量. 现象例如以下: 提示 ...

  3. Linux安装maven(详细教程)

    一.简介 Maven是意第绪语,意思是“知识的积累者”,最初是为了简化Jakarta Turbine项目中的构建过程.有几个项目,每个项目都有自己的Ant构建文件,所有项目都略有不同.JAR已检入CV ...

  4. Linux安装Git-两种方式详细教程)

    一.Git介绍 Git --- The stupid content tracker, 傻瓜内容跟踪器.Linus Torvalds 是这样给我们介绍 Git 的. Git 是用于 Linux内核开发 ...

  5. 第三章 用SDK编译出第一个在Linux下的软件界面

    第三章 用SDK编译出第一个在Linux下的软件界面 先创建一个工程目录“mkdir project1”,进入目录,创建main.cpp文件,编写代码如下: 代码内容暂时可以先不理解,先让程序跑起来再 ...

  6. VS2015+cordova+ionic安装配置

    VS2015已经出了正式版,想用来试一下cordova方面的开发.最近在看ionic这个框架,于是想能在VS2015里编辑js就好了. 下面说一下蛋疼的安装配置过程. 一.安装VS2015及Andro ...

  7. 自己瞎捣腾的Win7下Linux安装之路-----理论篇

    接着上回说道,我把双系统做好啦,开心.... 之后我就在想几个问题: 1.在Ubuntu装好后,重启电脑却还是win7,等我用EasyBCD之后,才可选择使用装好的Ubuntu呢? 2.在用EasyB ...

  8. 轻松解决Linux安装Eclipse方法

    随着Linux的发展,很多人开始学习Linux系统,你了解Linux系统么?你是Linux系统的应用者么?本文为你详细介绍Linux安装Eclipse,为你在学习Linux安装Eclipse时起一定的 ...

  9. 把Linux安装到移动硬盘上

    把Linux安装到移动硬盘上 转载于:http://mrkh.me/install-linux-on-a-portable-hard-drive.html 这一篇文章讲一下,怎么把linux安装到移动 ...

随机推荐

  1. python3-requests库的使用

    同步请求库requests用来做测试和简单爬虫其实非常好用的,今天来讲一讲,毕竟不熟悉就用,吃了很大亏啊,文档一定要好好看 http://docs.python-requests.org/zh_CN/ ...

  2. Struts2中的类型转换与复杂对象配合使用

    form 标签可以被映射到一个属性的属性 manager.java package com.atguigu.struts2.model; import java.util.Date; public c ...

  3. Code Forces 645B Mischievous Mess Makers

    It is a balmy spring afternoon, and Farmer John's n cows are ruminating about link-cut cacti in thei ...

  4. CH5103 传纸条【线性dp】

    5103 传纸条 0x50「动态规划」例题 描述 给定一个 N*M 的矩阵A,每个格子中有一个整数.现在需要找到两条从左上角 (1,1) 到右下角 (N,M) 的路径,路径上的每一步只能向右或向下走. ...

  5. R语言中基于聚类的离群点挖掘

    思路:首先,通过K-means算法将数据点划分为成若K个簇:然后计算每一个数据对象到最近簇的中心距离,来与离群点设置的阈值进行比较,以此来判别该数据对象是否是离群点. 1.读取数据 data<- ...

  6. /proc/iomem和/proc/ioports对应的fops

    /proc/iomem和/proc/ioports对应的fops static int __init ioresources_init(void) {     struct proc_dir_entr ...

  7. HBase简单API

    一.使用IDEA的maven工程,工程结构如下: 二.maven的依赖pom.xml文件 <?xml version="1.0" encoding="UTF-8&q ...

  8. cpython解释器内存机制

    java虚拟机内存 笼统分为两部分:堆区,栈区 其中,引用在栈区,对象在堆区 详细分为五部分:堆区,虚拟机栈区,本地方法栈区,方法区,程序计数器 cpython解释器内存 笼统分为两部分:堆区,栈区 ...

  9. 13.Query for Null or Missing Fields-官方文档摘录

    1 插入数据 db.inventory.insertMany([ { _id: 1, item: null }, { _id: 2 } ]) 2 查询null值 db.inventory.find({ ...

  10. 程序猿Web面试之jQuery

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/powertoolsteam/article/details/32325013  又到了一年一度的 ...