INSTRUCTION SET: Processors are made of semiconductor dies, usually electronic-grade mono-crystalline silicon. They don't know English or any other human language, they understand only 0 and 1. So the designer of processor tells us in what sequence o…
一 Android开发工具简介 用于Eclipse的Android开发工具(AdnroidDeveloper Tools,简称ADT)插件提供了专业级别的开发环境,利用该环境来构建AndroidApps,它是一个完成的JavaIDE且具有高级的特征来帮助构建,测试,调试和打包AndroidApps. 而且它是免费的,开源的,运行在大多数的主流平台上. 二 下载Android SDK AndroidSDK提供了API库和必需的开发工具来构建,测试,调试AndroidApp 1 集成开发环境ADT…
Building Android Apps — 30 things that experience made me learn the hard way There are two kinds of people — those who learn the hard way and those who learn by taking someone’s advice. Here are some of the things I’ve learned along the way that I wa…
之前一直在linux下编译FFmpeg,最近换电脑了,尝试了下在mac下编译ffmpeg,特记录之. 一. 准备工作 1. 下载FFmpeg.(http://ffmpeg.org/download.html#releases),看了下最新的是4.1.4,我用的是3.4.6. 2. 下载mac上使用的NDK.(https://developer.android.google.cn/ndk/downloads/index.html), 我用的是android-ndk-r14b-darwin-x86_…
Can my single-threaded application benefit from multiple cores? How? Even a single-threaded application can benefit from parallel processing on different cores. For example, if your application uses a media server, then the media processing and your…
这个世界上有两种人-从经验教训中学习的人以及听从别人建议的人.这里是我一路走来学到的一些东西,分享给大家: 在添加任何第三方party之前,请三思:这真的是一个成熟的项目吗? 如果一个东西用户看不到,就不要绘制它! 除非真的需要,否则别使用数据库: 达到65k方法数限制来的非常快,真的,非常快!不过 multidexing 可以拯救你; RxJava 是 AsyncTasks 以及其它杂碎的最佳替代者: Retrofit 可能是现在最佳的网络请求库: 使用 Retrolambda来简化你的代码:…
Android 设备的CPU类型(通常称为”ABIs”) 引用: https://blog.csdn.net/ouyang_peng/article/details/51168072 armeabiv-v7a: 第7代及以上的 ARM 处理器.2011年15月以后的生产的大部分Android设备都使用它. arm64-v8a: 第8代.64位ARM处理器,很少设备,三星 Galaxy S6是其中之一. armeabi: 第5代.第6代的ARM处理器,早期的手机用的比较多. x86: 平板.模拟器…
一.架构 1.Arm架构 是一个32位精简指令集(RISC)处理器架构,其广泛地使用在许多嵌入式系统设计. 2.X86架构 是一个intel通用计算机系列的标准编号缩写,也标识一套通用的计算机指令集合. 3.Mips架构 是一种采取精简指令集(RISC)的处理器架构. 二.三者区别 X86架构是X86指令集,它属于CISC指令集.ARM架构是ARM指令集,属于RISC指令集. X86是冯若依曼结构,ARM是哈弗结构,这个不一定,比如ARM7TDMI用的就是冯若依曼结构. 其实都是差不多,X86指…
首先要明白ABI的概念:  ABI(Application Binary Interface)实际就是指应用程序基于哪种指令集来进行编译,我们能用到的ABI 也就四种  armeabi,armeabi-v7a ,x86 和mips ,前两者是最常见的. 其次这4个编译选项的含义: 1.‘armeabi’  默认选项,将创建以基于 ARM* v5TE 的设备为目标的库. 具有这种目标的浮点运算使用软件浮点运算. 使用此 ABI 创建的二进制代码将可以在所有 ARM* 设备上运行. 2.‘armea…
Error:(81) Android NDK: Application targets deprecated ABI(s): armeabi Error:(82) Android NDK: Support for these ABIs will be removed in a future NDK release. 当项目中使用到ndk时可能会爆出这个错误,原因是Android NDK从r16 beta1开始,不再支持 ARM5 (armeabi).默认情况下,Android NDK不会构建AR…
  原文  http://resources.infosecinstitute.com/system-address-map-initialization-x86x64-architecture-part-2-pci-express-based-systems/   This article is the second part of a series that clarifies PCI expansion ROM address mapping to the system address m…
Building Apps with Connectivity & the Cloud These classes teach you how to connect your app to the world beyond the user's device. You'll learn how to connect to other devices in the area, connect to the Internet, backup and sync your app's data, and…
This guide shows how to set up your SDK environment to deploy Cordova apps for Android devices, and how to optionally use Android-centered command-line tools in your development workflow. You need to install the Android SDK regardless of whether you…
<Android进阶>之第一篇 在Java中调用C库函数 这一篇列举的方法是在NDK没有出来时候用的方式 在Android发布NDK之后,可以这样使用 一.首先下载android-ndk   下载后把压缩包解压出来,例如:D:\android-ndk-r10e,目录下的ndk-build.cmd就是用来编译的批处理命令. 为了编译方便,推荐添加环境变量 Path目录下添加D:\android-ndk-r10e; 以NDK自带的例子\samples\hello-jni为例 将例子导入安卓工程:…
原文:http://www.androidauthority.com/arm-vs-x86-key-differences-explained-568718/ Android supports 3 different processor architectures: ARM, Intel and MIPS. The most popular and ubiquitous of these three is, without a doubt, ARM. Intel is well known pr…
点击打开链接 最近公司培训新同事,我负责整理一点关于android的基础知识,遥想当年,刚接触android,也是一头雾水, 啥都不懂,就是靠看文档和视频,对android有一个初步了解,然后就通过查看源码,才有更深入的了解. android有成千上万,说太少了,是成百万上亿的代码,当然要全部都了解是不可能的,所以要有一套自己的 方法来理解和查看代码.学习android,对代码框架结构的了解是必不可少的,其实现在6.0的代码都已经出来了, 但是上网查了下,没人写过5.1的代码结构,我在这里来补充…
Centos Android开发环境配置-Android Tools -android  list sdk --extended --all 安装完Android Tools后执行 android  list sdk --extended --all 列出下面可安装的Android SDK清单 具体安装方式: ./bin/sdkmanager "填写清单中可安装的项目名称" 比如: ./bin/sdkmanager "platform-tools" 清单如下,lin…
转自:http://blog.csdn.net/tfslovexizi/article/details/51888458最近公司培训新同事,我负责整理一点关于android的基础知识,遥想当年,刚接触android,也是一头雾水, 啥都不懂,就是靠看文档和视频,对android有一个初步了解,然后就通过查看源码,才有更深入的了解. android有成千上万,说太少了,是成百万上亿的代码,当然要全部都了解是不可能的,所以要有一套自己的 方法来理解和查看代码.学习android,对代码框架结构的了解…
编译 Luajit 库,的确是一个挑战.因为官网的教程,在当前版本的 Xcode 和 NDK 环境中,已经不适用了.以前只是编译了适用于真机的 Luajit 库.最近在尝试编译模拟器 Luajit 库,就顺便梳理了下 Luajit 库的编译经验,供以后查阅.网上的讨论也是有一些,但是相当一部分都已经过时.或许等你看到这篇文章的时候,可能也只是能获得一些可能的经验来解决自己的编译问题.所以说,了解一些基本的编译知识,能勉强看懂 Luajit 的 make 文件,还是很有必要的.本篇是关于 Luaj…
1.前言 在上一篇的内容里我们介绍了基于Android Studio构建ArcGIS Runtime SDK for Android开发环境的基本流程,流程中我们采用的是基于Gradle的构建方式,在这种方式里主要通过设置maven仓库位置,设置编译选项.依赖版本在联网环境下下载对应SDK依赖包. 但是在网络情况不好的情况下这种方式就不行了,那怎么解决在离线环境或者内网环境实现开发流程呢?目前了解到的有两种方式: 1)配置内网环境maven仓库,预先缓存到内网环境下,然后离线调用. 2)采用直接…
一.背景 首先说需求,这个需求非常常见,就是android上需要的一个功能,linux已经有开源代码而且非常稳定,希望能直接porting过去使用,这个程序是pure c 的代码,也就是说,跟android framework, java 没关系,也跟jni没有关系,我们希望的就是能编译成一个可执行工具,push到android后能直接跑起来使用. 既然是native 代码,主要影响到的就是bionic libc, 因为android的这个基础库跟 linux 上常见的 gnu libc 有区别…
244.http请求的url含有中字符时.须要Uri编码.Uri.encoder() 245.使用androidstudio时,不知道什么原因svn不见了 Android Studio missing Subversion plugin Please make sure that the "SubversionIntegration" plugin is enabled in Preferences > Plugins 246.Error:Execution failed for…
上周在做噪音检测so集成中,遇到不同的so库打包到 APK 时,安装在某些机器上,出现 java.lang.UnsatisfiedLinkError 加载失败. 为此,深究了一下原理,和给出了解决方案. 原理 Android 系统本质是一个经过改造的 Linux 系统.最早,Android 系统只支持 ARMv5 的 CPU 构架,随着 Android 系统的发展,又加入了 ARMv7 (2010), x86 (2011), MIPS (2012), ARMv8, MIPS64 和 x86_64…
配置: 用的版本号是AS1.5(也能够尝试更高版本号). Gradle地址是distributionUrl=https\://services.gradle.org/distributions/gradle-2.8-all.zip NDK用的是CrystaX NDK 有參考:https://github.com/TsinStudio/AndroidDev/blob/master/Android%20NDK%20C%2B%2B%20开发利器:Android%20Studio.md 常见问题: 1.…
我参加了CSDN博客之星评选,如果在过去的一段时间里阳光小强的博客对你有所帮助,在这里希望能投上您宝贵的一票,每天都可以投一次:http://vote.blog.csdn.net/blogstar2014/details?username=lxq_xsyu#content 一.什么是JNI JNI是Java Native Interface的缩写(Java本地调用),Java程序中的函数可以调用Native语言写的函数(一般指的是C/C++编写的函数),Native语言写的函数可以调用Java层…
Android.mk file syntax specification Introduction: This document describes the syntax of Android.mk build file written to describe your C and C++ source files to the Android NDK. To understand what follows, it is assumed that you have read theOVERVIE…
Android.mk认识: 在上一次[https://www.cnblogs.com/webor2006/p/9946061.html]中学会了用NDK提供的交叉编译工程编译成Android能运行的可执行文件,下面咱们来做个实验来看一下使用静态库与动态库的区别,还是用上一次用的源文件为例: 动态库的具体的生成过程可以参考上一次写的博文,接下来再生成一个静态库,如何生成呢? 所以咱们先来找到NDK提供的ar交叉编译工具: 所以咱们使用它依照生成规则来生成对应的静态库看一下: 接下来咱们新建一个An…
Android Weekly Issue #235 December 11th, 2016 Android Weekly Issue #235 本期内容包括: 开发一个自定义View并发布为开源库的完整流程介绍; 用AnimatedVectorDrawable实现的动画; 什么样的程序是可测试的; DownloadManager介绍; Okhttp的重试; Android 7取消了file://; Android Studio即将推出的build cache功能; 支持离线模式的app构架; 如…
Android Weekly Issue #224 September 25th, 2016 Android Weekly Issue #224 本期内容包括: Google Play的pre-launch报告; Wear的Complications API; Android Handler解析; RxAndroid; 测量性能的库: Pury; 方法数限制; APK内容分析; Redux for Android; 一种view造成的泄露; 注解处理; 更好的Adapter; Intro屏等等.…
Android Weekly Issue #222 September 11th, 2016 Android Weekly Issue #222 ARTICLES & TUTORIALS Forcing bytes download in Okio 这是Jake Wharton的文章, 关于Okio的BufferedSink. okio 是一个java io库, 包装了一套API用来读写和处理数据. 文档见: okio doc. 很多库都是在其之上写的, 比如okhttp, Retrofit,…