博客:http://blog.csdn.net/muyang_ren Ubuntu14.04 LTS(要求是64位长期支持版LTS) Jdk1.8 内核:android4.0 一:jdk 1.解压jdk,获得路径 2. sudo vim /etc/environment 改动为: PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/lhy/jdk/…
本文不作为ndk初学使用,只是对cpp等c++文件编译成so文件的过程中,参数含义,及ndk配置的解释.使用的技术比较旧. androidStudio使用gradle调用ndk-build工具编译c++代码, 使用ndk-build来进行编译,而不是使用最新版本的cmake工具 在gradle配置的参数最后都是调用ndk-build命令去执行Android.mk和Application.mk文件 Android.mk文件指定需要编译的c或c++文件 Application.mk文件用来描述应用程…
android架构:在了解全局的情况下进行细致化的分析才能更有效的学习android的运行原理,才能更深刻的理解android开发: 1.架构图直观 2.架构详解 2.1.Linux Kernel 2.1.Android Runtime 2.3.Libraries 2.4.Application Framework 2.5.Applications 一.架构图直观 下面这张图展示了Android系统的主要组成部分: 可以很明显看出,Android系统架构由5部分组成,分别是:Linux Kern…
定义Android Layout(XML)时,有四个比较特别的标签是非常重要的,其中有三个是与资源复用有关,分别是<viewStub/>, <requestFocus />, <merge /> and<include />.可是以往我们所接触的案例或者官方文档的例子都没有着重去介绍这些标签的重要性. <viewStub  />: 此标签可以使UI在特殊情况下,直观效果类似于设置View的不可见性,但是其更大的(R)意义在于被这个标签所包裹的Vi…
1. Application does not specify an API level requirement! 解决方法:AndroidManifest.xml中 加入: <uses-sdk android:minSdkVersion="3"></uses-sdk> -------------------------------------------------------------------------------------------------…
android分为四个层,从高层到低层分别是应用程序层.应用程序框架层.系统运行库层和linux核心层.蓝色的代表java程序,黄色的代码为运行JAVA程序而实现的虚拟机,绿色部分为C/C++语言编写的程序库,红色的代码内核(linux内核+driver).在Application Framework之下,由C/C++的程序库组成,通过JNI完成从JAVA到C的调用. 1) 应用程序所有的应用程序都是使用JAVA语言编写的,每一个应用程序由一个或者多个活动组成,活动必须以Activity类为超类…
   然后我们看一下Helloword的程序目录: 我们可以看到 大致有的文件: 1. MainHelloWorld.java文件 2. R.java文件 3. android.jar文件 4. RES.Layout.main.xml文件 5. androidmainfest.xml文件 还有目录大致有 1. src 2. gen 3. assets 4. res res 下边有 drawable 放一些图片资源  , layout 放一些布局文件,values 放一些文字资源 ,  另外有时候…
一.问题: android studio项目中没有看到menu文件夹: 在android studio项目中想要添加menu布局文件,一开始我的做法是:直接在res文件夹右键选择xml文件来添加,如下图: 但是会发现新建的布局文件好像很奇怪,不能添加menu以及item,如下图: 二.解决办法: 经过百度才知道menu布局文件要在menu文件夹地下创建才行,正确的做法如下: (1)先在res文件夹右键,然后如下图选择: 然后会出现下面的页面,在Resource type下拉栏选择menu,如下图…
一切就绪,新建一个android测试工程: 上网权限配置,界面绘制啥的,这里就不说了. 首先 导入一个smark包.这个是用来维护长连接的,也可以是asmark.我用的是asmark 先普及一些基本知识: 在xmpp中,所有东西的传输都是通过一个XMPPConnection的对象来进行传输的. 它给一个xml头,当服务器收到xml尾的时候,认为一次连接结束了 既然这样的话我们第一步就是拿到这个连接 /** * 连接服务器 * * @return */ public boolean conServ…
关于快捷键 The File Structure Popup ctrl+f12此快捷键可以调出当前文件的大纲,并通过模糊匹配快速跳转至指定的方法.勾选上“show anonymous classes”后其功能相当于Eclipse中的ctrl+o The Call Hierarchy Popup ctrl+alt+h 查看某个方法的调用路径. Quick Definition Lookup ctrl+shift+i 不离开当前文件当前类的情况下快速查看某个方法或者类的实现.通过大概预览下调用的方法…
功能: app用户根据自己的语言喜好,设置app语言.语言设置只针对本app,并在下次启动应用时保留前一次启动设置. 更新语言: public static void changeAppLanguage(Resources resources, String lanAtr) { Configuration config = resources.getConfiguration(); DisplayMetrics dm = resources.getDisplayMetrics(); if (la…
环境 宿主机平台:Ubuntu 16.04.6 目标机:iMX6ULL Linux内核编译配置脚本 在linux开发过程中熟练使用脚本可以大大简化命令行操作,同时对于需要经常重复操作的指令也是一种备忘: 在linux内核源码根目录添加 config-kernel 文件 #!/bin/sh echo "config menu" echo " 1 make clean" echo " 2 make distclean" echo " 3 c…
前面多篇文章介绍到如何下载和编译Android或者CM源码,不过一直都是放在<拓展系列>里.随着学习的深入,android源码是非常有参考和学习价值,强烈推荐大家都去下载,编译,学习,所以把它提到<学习系列>专讲一章基础篇.刚装了UBUNTU14.04,所以尝试在新环境下编译一下android源码.因为和谐原因,我临时买了个VPN,推荐一下(还算稳定):http://a.wy002.com/34750 或者云梯 1.参考链接(官方):环境:http://source.android…
博客地址 : http://blog.csdn.net/shulianghan/article/details/40299813  本篇文章中用到的工具源码下载 : -- ok-6410A 附带的 Android 光盘 下载地址 : http://pan.baidu.com/share/link?shareid=3662728609&uk=2754759285 ; -- 光盘所含内容 : Android 引导 u-boot 源码, Android 内核 源码, Android 系统源码, 交叉编…
Android源码和内核的编译就是一场马拉松,每一个节点都耗时漫长,下载源码.编译源码.下载内核.编译内核,下载中途会断掉,编译中间会失败,求解再重来,又是一轮马拉松,于是每一步都要做好备份和记录,可是30G的源码(编译后已经达到70G)备份一次都需要好久.好在春节伊始我放弃了其他的学习,全力搞这个过程,终于算是拿下了.不过,漫漫长路,这只是一个开头. 我编译的是Android最新稳定版本android-6.0.1_r11,内核是android-goldfish-3.4,平台是Mac OS 10…
这些天花了些时间自己下载了android源代码来编译,当中走了一些弯路导致耗了些时间,如今又一次梳理总结下,让有同样想法的人自己编译的时候能少走些弯路,官方指导文档在http://source.android.com/source/initializing.html. 1.安装linux环境 我是windows系统,安装了Vmware虚拟机.在虚拟机上装了ubuntu-12.04,我的这个版本号是32位的,这个还蛮重要的.安装32位或者64位的将决定你能编译的android版本号,官方文档里Fo…
1.编译种错误提示: arm-none-linux-gnueabi-gcc: directory: No such file or directory arm-none-linux-gnueabi-gcc: directory": No such file or directory <command-line>:0:16: warning: missing terminating " character 解决方案: https://github.com/Pivosgroup…
1. 首先需要一个OSG for android的环境 (1)NDK 现在Eclipse 对NDK已经相当友好了,已经不需要另外cygwin的参与,具体可以参考 Android NDK开发篇(一):新版NDK环境搭建(免Cygwin,超级快) (2).OSG for android的编译,参考 osg for android学习之一:windows下编译(亲测通过)  建议编译OpenGL ES2版本.   2.然后加载OSG自带的Example:osgAndroidExampleGLES2 (…
一.APK安装 1.首先需要AndroidManifest.xml中加入安装程序权限: <!-- 安装程序权限 --> <uses-permission android:name="android.permission.INSTALL_PACKAGES"/> 2.把安装程序添加进SDCard.如把文件名为” sogouinput_android_1.40_sweb.apk.zip”的sogou拼音输入法安装文件放进SDCard. 3.在程序中添加以下代码: In…
自从2014年底到2015年中,全民创业的热潮就已经席卷全国了,一大批新的创业公司在北上广萌芽,也造成了大量的开发人员需求.扯远了,今天不谈创业潮,聊聊如何通过反编译学习Android.本文只是个人对于学习的一点看法,大神请绕道. 如今市面上有很多优秀的App.这些App比较适合我们拿出来研究,去了解他们使用的技术(用了哪些开源库,^_^).那么如何去了解呢?反编译~ 基本上经过反编译之后的代码,就能大致的了解其软件结构了.下面以一些app为例简单地说明,仅作为学习交流,请勿随意传播,造成不良影…
安卓开发新手百度地图,刚开始碰到一个问题,没有地图信息,还有就是它只有一帧. 如图所示: 上网寻找说是key的问题,然后又一次申请.还是不行. 最后再次看了自己的Manifest文件,发现自己的<MataData>有问题.放在了新写的Application标签里.应该放在自带的Application里面.然后,就攻克了. 部分的Manifest文件: <application android:allowBackup="true" android:icon="…
通过编译android4.1.2的源代码,添加一个FregServer的系统服务,以及一个服务代理FregClient 具体分为三部分,client,common,server,common中规定了client和common的接口,和一些公共方法 client部分代码 #define LOG_TAG "FregTest" #include <utils/Log.h> #include <binder/IServiceManager.h> #include &qu…
在前面的学习中,我们已经讲解了关于NDK编程的环境搭建流程,简单的使用我们也通过官网本身自带的例子进行说明了.可是相信大家一定还存在这么的一个疑惑:“如果我要自己利用NDK编写一个Android应用,具体应该怎么做?有什么要求”.OK,别担心,下面就让我们一起来利用NDK来编写一个简单的Android应用. 1 创建一个新的Project 1) 通过以下命令创建一个新的Android Project (详细的使用方法,大家可以回去重新参考博文<Android学习第二天-android常用命令>…
在前面<Android学习第一天-adb常用命令>和 <Android学习第二天-android常用命令>两篇博文中,我们重点讲解了adb和android的常用命令,下面我们讲解一下打包的时候常用的命令吧 3. emulator 一般情况下,我们使用这个命令进行模拟器的开启比较多 模拟器的开启方式如下: emulator -avd <avd_name> [<options>] 或者 emulator @<avd_name> 一般情况下我们都是直接…
http://www.cnblogs.com/chenbin7/archive/2013/01/05/2846863.html Android.mk简单分析 2013-01-05 22:51 by ...平..淡..., 884 阅读, 0 评论, 收藏, 编辑 LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE_TAGS := optional LOCAL_SRC_FILES := $(call all-java-fil…
作者 : 韩曙亮  博客地址 : http://blog.csdn.net/shulianghan/article/details/42707293 转载请注明出处 : http://blog.csdn.net/shulianghan VLC 二次开发 视频教程 : http://edu.csdn.net/course/detail/355 博客总结 : -- 本博客目的 : 让 Android 开发者通过看本博客能够掌握独立移植 VLC Media Player 核心框架到自己的 app 中,…
我们知道,在一个APK文件中,除了有代码文件之外,还有很多资源文件.这些资源文件是通过Android资源打包工具aapt(Android Asset Package Tool)打包到APK文件里面的.在打包之前,大部分文本格式的XML资源文件还会被编译成二进制格式的XML资源文件.在本文中,我们就详细分析XML资源文件的编译和打包过程,为后面深入了解Android系统的资源管理框架打下坚实的基础. 在前面Android资源管理框架(Asset Manager)简要介绍和学习计划一文中提到,只有那…
cp from : https://www.jianshu.com/p/367f0886e62b 在Android Studio代码调试一文中,简单的介绍了代码调试的一些技巧.现在我们来谈谈android源码编译的一些事.(俺认为,作为android developer人人都应该有一份自己Android源码,这样我们就可以随时对自己有疑惑的地方通过亲手调试来加强理解). 本文使用最新的Ubuntu 16.04,请首先确保自己已经安装了Git.没安装的同学可以通过以下命令进行安装: sudo ap…
一. Android系统的源代码非常庞大和复杂,我们不能贸然进入,否则很容易在里面迷入方向,进而失去研究它的信心.我们应该在分析它的源代码之前学习好一些理论知识,下面就介绍一些与Android系统相关的资料. 我们知道,Android系统是基于Linux内核来开发的,在分析它在运行时库层的源代码时,我们会经常碰到诸如管道(pipe).套接字(socket)和虚拟文件系统(VFS)等知识.此外,Android系统还在Linux内核中增加了一些专用的驱动程序,例如用于日志系统的Logger驱动程序.…
声明:android学习文件中面的全部内容为都是整理来自第一行代码Android.在接下来的文章里我就不在进行反复的声明. 想看原版的能够买书看看.或者去作者的博客http://blog.csdn.net/guolin_blog?viewmode=contents,我整理的目的是为了以后自己方便的进行知识的复习有一个系统的知识.写的有点水,大神的就飘过吧. 1.android系统架构 1.linux内核层.android系统是基于linux2.6内核的 2.系统执行库层,这一层通过一些c/c++…