场景

现在的开发大多是在linux的虚拟机上进行,现在有些工作和android有关,因此初步尝试了一下是否可以和目前的场景进行统一。

系统是在vmware workstaion上的centos 7的64位版本的虚拟机上

SDK/Studio

http://yun.baidu.com/share/home?uk=67915989&view=share#category/type=0

国内的一个镜像,可下载SDK和Studio

JDK

Centos默认带的openjdk需要替换成Oracle标准JDK,如下是多个版本的脚本例子

#!/bin/bash

JDK=(jdk1.7.0_25 jdk1.8.0_25 jdk1.7.0_51)

JDK_TAR=(server-jre-7u25-linux-x64.tar.gz jdk-8u25-linux-x64.tar.gz jdk-7u51-linux-x64.gz)

appDir=/home/csbit/

#if [ ! -s jdk/jdk-7u51-linux-x64.gz ]; then

# ln -s ../../../../../ide/share/jdk-7u51-linux-x64.gz jdk/jdk-7u51-linux-x64.gz

#fi

#param: index of $JDK's array

function instJDK()

{

#old jdk version

for j in ${JDK[@]}

do

if [ -d /usr/lib/jvm/$j ]; then

echo "rm old $j"

sudo rm -r -f /usr/lib/jvm/$j

fi

done;

sudo rm -f /usr/bin/java

sudo rm -f /usr/bin/javac

###update JDK

sudo mkdir -p /usr/lib/jvm

sudo tar -xzf jdk/${JDK_TAR[$1]} -C /usr/lib/jvm

echo 'JDK install done'

#ENV

#set binary

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/${JDK[$1]}/bin/java 300

sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/${JDK[$1]}/bin/javac 300

echo 'JDK env done'

sudo update-alternatives --set java /usr/lib/jvm/${JDK[$1]}/bin/java

sudo update-alternatives --set javac /usr/lib/jvm/${JDK[$1]}/bin/javac

}

instJDK 0

设置好后,JAVA_HOME环境变量设置上

32位包

sudo yum install -y glibc.i686

sudo yum install -y glibc-devel.i686

sudo yum install -y libstdc++.i686

sudo yum install -y zlib.i686

centos7 下仍有问题,运行android studio会提示mksdcard不能运行的情况,通过查看ldd mksdcard,缺少相关的库文件

通过寻找,可以在 vmware tools拷贝,即把包libgcc_s.so libstdc++.so等拷贝到/usr/lib/gcc/x86_64-redhat-linux/4/8.2/32目录下

在/etc/ld.so.conf中加入 /usr/lib/gcc/x86_64-redhat-linux/4/8.2/32,执行ldconfig -v更新库路径,然后再执行 ./mksdcard 就可正常运行

运行

./studio 就可以进行工程的建立和编译等,由于采用的是gradle进行构建的,因此需要需要把这个环境拷贝到其他的脱机的机器上,需要把当前用户的.gradle等目录一并拷贝就行

~/Android/Sdk 是安装的SDK

模拟器运行

编译好后,运行时提示

Android/Sdk/tools/emulator -avd Nexus_5_API_21_x86 -netspeed full -netdelay none
emulator: ERROR: x86 emulation currently requires hardware acceleration!
Please ensure KVM is properly installed and usable.
CPU acceleration status: KVM is not installed on this machine (/dev/kvm is missing).

参考这个

http://www.111cn.net/sys/CentOS/66219.htm

[root@361way ~]# yum -y install qemu-kvm libvirt virt-install bridge-utils

[root@361way ~]# lsmod | grep kvm  # make sure modules are loaded

kvm                   441119  0

[root@361way ~]# systemctl start libvirtd

[root@361way ~]# systemctl enable libvirtd

注:centos7上服务的管理方式换成了systemctl

在VMware虚拟机上安装不上。

通过搜索可见涉及Intel HAXM的问题,在虚拟机上估计是运行不了

通过看到有个android x86项目,进行了如下尝试

Android X86

Android x86 即运行于 x86 PC上的Android操作系统,目前已经支持大部分安卓程序。Android X86平台是由Beyounn和Cwhuang主持设计的。项目的主要目的在于为X86平台提供一套完整的Android 系统解决方案。

http://baike.baidu.com/link?url=Uw1vMI5RKZluaaGBajP8zBynMdblupV8BXJQCGI37RO10KaVVLgvQv2OmPqLnu3HGSDrDuJ1W7-w11xYtWYg3K

http://www.android-x86.org 官方被墙了,可以看中文的地址http://www.x86android.com/forum-2-1.html

http://www.x86android.com/thread-57744-1-1.html 4.4版本下载

Vmware中安装Android4的安装详细步骤

http://wenku.baidu.com/link?url=0ch26cweCjqyNySsWENK0Pn8ukCwhc85pjmbgeZnB6jjbEXxGGnV97ALg1EYs_j1N8jhPrSZaQwM0wSGLZnuHbGUtMbEfLKSdt52LiNZY7G

注意:

Ø 第一次开机时,把虚拟机的网卡关闭,否则被墙的google站点访问不到,进入到系统桌面

结论

Android可以在虚拟机上进行开发和编译,但运行的话,需要安装物理机下的windows版本的android环境或者linux版本

Android x86是一个选择,不过有些复杂,待有空再探探

centos 7 64位虚机上android4环境运行的更多相关文章

  1. 腾讯云申请的64位ubuntu服务器配置php环境

    腾讯云申请的64位ubuntu服务器配置php环境 一.首先还是安装Lamp组合 Linux+Apache+Mysql+php 直接命令 sudo apt-get install apache2 su ...

  2. 64位Ubuntu配置android环境报错(...adb": error=2, 没有那个文件或目录)

    Failed to get the adb version: Cannot run program "/home/jayhomzhou/android/android-sdk/platfor ...

  3. [转]win7 64位下android开发环境的搭建

    本文转自:http://www.cfanz.cn/index.php?c=article&a=read&id=65289 最近换了新电脑,装了win7 64位系统,安装了各种开发环境, ...

  4. Ubuntu14(64位) 集群环境下安装Hadoop2.4

    经过前边的积累,今天最终实现了集群环境下部署Hadoop.并成功执行了官方的样例. 工作例如以下: 两台机器: NameNode:上网小本,3G内存.机器名:YP-X100e,IP:192.168.1 ...

  5. Windows 64 位系统下 Python 环境的搭建

    Windows 64 位开发环境 注意:本教程适用于 Windows 7 64 位操作系统 及 Windows 10 64 位操作系统,其他系统尚未经过校验. 安装 IDE PyCharm 下载:ht ...

  6. win7 64位下android开发环境的搭建

    本文转自:http://www.cfanz.cn/index.php?c=article&a=read&id=65289 最近换了新电脑,装了win7 64位系统,安装了各种开发环境, ...

  7. Win7+Qt5.6.0(64位)+msvc2015编译器 环境配置

    根据“Qt简介,Qt 5.6.0-VS2015 版本安装配置图文教程”安装第二套IDE,使用Qt官方的集成开发环境 QtCreator + 微软的WinDbg调试器(内含命令行调试器为CDB)的组合. ...

  8. win7旗舰版64位java的jdk环境变量的配置(2012-12-26-bd 写的日志迁移

    首先到oracle的官方网站http://www.oracle.com/technetwork/cn/java/javase/downloads/index.html下个JDK比如下图: 必须是win ...

  9. Windows10 64位部署odoo12开发环境

    预装Windows10 64位家庭版电脑一台 2019年7月 安装Python,这里的版本选择上有个坑,不要装最新的Python 3.7.x,原因是odoo12依赖pillow 4.0.0库,而这个4 ...

随机推荐

  1. jQuery源码分析系列(35) : Ajax - jsonp的实现与原理

    ajax的核心是通过XmlHttpRequest获取非本页内容,而jsonp的核心则是动态添加<script>标签来调用服务器提供的js脚本 json核心就是:允许用户传递一个callba ...

  2. 前端MVC框架Backbone 1.1.0源码分析(二) - 模型

    模型是什么? Models are the heart of any JavaScript application, containing the interactive data as well a ...

  3. Eclipse迁移到Android studio步骤如下:

    一.从Eclipse中导出:1.将你的ADT插件版本升级到22.0以上.2.在Eclipse中,选择File-->Export.3.在弹出的导出窗口中,打开Android的文件夹,选择“Gene ...

  4. n个结点,不同形态的二叉树(数目+生成)

    题目链接: 不同的二叉查找树:http://www.lintcode.com/zh-cn/problem/unique-binary-search-trees/ 不同的二叉查找树 II:http:// ...

  5. T-SQL:毕业生出门需知系列(七)

    第7课 创建计算字段 7.1 计算字段(格式化字段) 存储在数据库表中的数据一般不是应用程序所需要的格式,如: 1.需要显示公司名,同时还需要显示公司的地址,但这两个信息存储在不同的表列中. 2.列数 ...

  6. 窥探Swift之数组与字典

    说到数组和字典,只要是编过程的小伙伴并不陌生.在Swift中的数组与字典也有着一些让人眼前一亮的特性,今天的博客就来窥探一下Swift中的Array和Dictionary.还是沿袭之前的风格,在介绍S ...

  7. Flume官方文档翻译——Flume 1.7.0 User Guide (unreleased version)中一些知识点

    Flume官方文档翻译--Flume 1.7.0 User Guide (unreleased version)(一) Flume官方文档翻译--Flume 1.7.0 User Guide (unr ...

  8. (六)WebGIS中地图瓦片在Canvas上的拼接显示原理

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.前言 在之前的五个章节中,我们在第一章节里介绍了WebGIS的基本 ...

  9. Oracle常用的SQL方法总结

    在项目中一般需要对一些数据进行处理,以下提供一些基本的SQL语句: 1.基于条件的插入和修改:需要在表中插入一条记录,插入前根据key标识判断.如果标识符不存在,则插入新纪录,如果标识符存在,则根据语 ...

  10. 教你快速高效接入SDK——服务器端支付回调的处理方式

    转载自:http://blog.csdn.net/chenjie19891104/article/details/48321427今天着重把之前渠道服务器端SDK的时候,遇到的一个蛋疼的问题给解决了. ...