android架构

Android-webview和js互相调用

谁说胖子不能爱 提交于 2020-02-10 03:01:38
Android 和 H5 都是移动开发应用的非常广泛。市面上很多App都是使用Android开发的,但使用Android来开发一些比较复杂附属类,提示性的页面是得不偿失的。而H5具有开发速度快,更新不用依赖于App的更新,只需要服务端更新相应的页面即可,所以,App和H5页面相结合就显得尤为重要。而android和H5都不可能每次都是独立存在的,而是相互影响也相互的调用,获取信息等,例如,H5页面要获取App中的用户的基本信息,或者App端要操作H5页面等,下面来看看这两是怎么交互的。 先来看一下项目的整体架构(Android studio中的项目) 整个项目的结构就是这样的,里面最主要的就是assets下面的js_webView.html文件和代码中的WebViewJsActivity,其中项目里面的MainActivity只是做了个跳转而已,跳转到WebViewJsActivity。就这样。 下面上代码:(js_webView.html) html里面的代码也比较简单,整个html中就一个Button,点击这个Button的时候去执行javascript中的 jsCallAndroid() 方法。 网页中有关 javascript 的代码也比较简单,整个 js 就2个方法,一个是 jsCallAndroid() ,一个是 androidCallJs() 。看方法名就知道了

CocosCreator | 配置Android 安卓 开发环境

扶醉桌前 提交于 2020-02-08 18:29:15
更多教程和源码请关注公众号: 1JDK 下载地址: https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 选择和你电脑匹配的操作系统和架构 笔记本系统: 所以下载的是:Windows x64 下载完成后,双击exe安装,选择jdk及jre的安装目录: 安装完成后,我的目录结构: 检查是否安装成功,在命令行工具中输入下面代码来查看: java -version 安装成功: 2环境变量 1.新建系统变量 变量名:JAVA_HOME 变量值:D:\Java\jdk1.8.0_241 2.编辑环境变量 变量名:Path 新建:%JAVA_HOME%\bin 3.新建系统变量 变量名:CLASSPATH 变量值: .;%Java_Home%\bin;%Java_Home%\lib\dt.jar;%Java_Home%\lib\tools.jar 修改完环境变量后,需要重启电脑才可以生效 但这位老爷子重启一次大概需要2分钟,所以偷个懒吧 在任务管理器中重启explorer.exe服务即可 3Android Studio:SDK/NDK 下载地址: http://www.android-studio.org/ Android Studio安装成功后,运行 选择Configure:

10本 Linux PDF 书籍免费分享

时光毁灭记忆、已成空白 提交于 2020-02-08 05:25:38
极力推荐文章:欢迎收藏 Android 干货分享 本篇文章主要分享以下 Linux 开发 PDF 书籍 一、Linux程序设计 二、Unix环境高级编程 三、Unix_Linux编程实践教程 四、鸟哥的私房菜 五、深入理解Linux内核 六、Linux命令行与shell脚本编程大全 七、Linux内核设计与实现 八、ARM_Linux内核源码剖析 九、深入Linux内核架构 十、Linux系统编程 一、Linux程序设计 PDF书籍获取方法 关注微信公众号: 程序员Android ,回复 Linux程序设计 ,即可免费获取。 PDF仅供参考,支持购买正版书籍,请点击下方京东链接,谢谢! 点击查看图书详细信息 二、Unix环境高级编程 PDF书籍获取方法 关注微信公众号: 程序员Android ,回复 Unix环境高级编程 ,即可免费获取。 PDF仅供参考,支持购买正版书籍,请点击下方京东链接,谢谢! 点击查看图书详细信息 三、Unix_Linux编程实践教程 PDF书籍获取方法 关注微信公众号: 程序员Android ,回复 Unix_Linux编程实践教程 ,即可免费获取。 PDF仅供参考,支持购买正版书籍,请点击下方京东链接,谢谢! 点击查看图书详细信息 四、鸟哥的私房菜 PDF书籍获取方法 关注微信公众号: 程序员Android ,回复 鸟哥的私房菜 ,即可免费获取。

RK3228H开发之Rockchip Recovery及android系统升级详解

假如想象 提交于 2020-02-08 04:25:57
一、引言 Recovery 模式指的是一种可以对安卓机内部的数据或系统进行修改的模式,(类似于 windows pe 或 DOS)。在这个模式下我们可以刷入新的安卓系统,或者对已有的系统进行备份或升级,也可以在此恢复出厂设置,本篇文章即来介绍下Rockchip中的recovery 二、Recovery 模式在框架层的位置 Android 启动后,会先运行 bootloader。Bootloader 会根据某些判定条件决定是否进入 recovery 模式。Recovery 模式会装载 recovery 分区,该分区包含 recovery.img。Recovery.img 包含了标准内核(和boot.img 中的内核相同)以及 recovery 根文件系统。 Android recovery 三个部分两个接口,recovery 的工作需要整个软件平台的配合,从架构角度看,有三个部分: Main System: 用 boot.img 启动的 Linux 系统,Android 的正常工作模式。 Recovery:用 recovery.img 启动的 Linux 系统,主要是运行 recovery 程序。 Bootloader:除了加载、启动系统,还会通过读取 flash 的 MISC 分区获得来自 Main System 和Recovery 的消息,并以此决定做何种操作。 两个通信接口:

CMAKE_TOOLCHAIN_FILE

你离开我真会死。 提交于 2020-02-08 00:25:20
CMAKE_TOOLCHAIN_FILE CMAKE给交叉编译预留了一个变量CMAKE_TOOLCHAIN_FILE,它定义了一个.cmake文件的路径,该文件里面设置了一系列CMAKE变量和属性,比如C_COMPILER,CXX_COMPILER等。.cmake文件的好处是一次编写多次使用,不同平台架构的交叉编译工具链可以编写一个独立的toolchain.cmake文件,而工程的CMakeLists.txt可以编写为通用格式,对工具链不可见。cmake脚本可以如下形式: cmake -DCMAKE_TOOLCHAIN_FILE=../depneds/toolchains/ndk64-toolchain.cmake .. && make cmake -DCMAKE_TOOLCHAIN_FILE=../depends/toolchain/ndk32-toolchain.cmake .. && make toolchain.cmake demo set(CMAKE_SYSTEM_NAME Android) set(CMAKE_ANDROID_API 21) set(CMAKE_ANDROID_ARCH_ABI aarch64) set(CMAKE_ANDROID_STL_TYPE gnustl_static) set(TOOLCHAIN_PATH /opt/sdk/android

国产安卓第三方OS介绍

只愿长相守 提交于 2020-02-07 02:23:42
安卓系统因其开源开放的特点,短短几年间就迅速占据了手机操作系统的大半的市场份额,Android平台提供给第三方开发商一个十分宽泛、自由的环境,不会受到各种条条框框的阻扰,因此也出现了许许多多的基于安卓的深度定制系统,在国内比较出名的就是小米的MIUI,阿里巴巴的阿里云OS,魅族的Flyme OS等。 今天安卓后院(www.top139.com)要为大家介绍的几款国产安卓第三方OS都专门针对中国人使用习惯进行了设计,全面改进原生体验。能够带给国内用户更为贴心的Android智能手机体验。下面将为大家详细的介绍一下这些国产安卓第三方OS。 国产安卓第三方OS一:小米MIUI 推荐指数:★★★★★ 系统简介: MIUI(米柚)是小米科技旗下基于Android进行深度优化、定制、开发的第三方手机操作系统极受手机发烧友欢迎的Android ROM,专为中国人习惯设计,全面改进原生体验。能够带给国内用户更为贴心的Android智能手机体验。从2010年8月16日首个内测版发布至今,MIUI目前已经拥有国内外2000万的发烧友用户,享誉中国、英国、德国、西班牙、意大利、澳大利亚、美国、俄罗斯、荷兰、瑞士、巴西等近20个国家。 系统官网: http://www.miui.com/ 国产安卓第三方OS二:魅族flyme OS 推荐指数: ★★★★☆ 系统简介:

Android PM suspend&resume

人盡茶涼 提交于 2020-02-07 00:14:29
Android PM suspend&resume 电源 管理 主要体现在以下方面: 1.低功耗模式:对于现在的嵌入式芯片,都提供了各种低功率模式,如:提供了STOP,WAIT,DEEP SLEEP等功率状态,为不同的 系统 应用 使用不同的功率模式提供了很好的 解决 方案 。同时,除DEEP SLEEP模式外,在动态电源管理中,大大提高了其他模式之间的转换速度。 2.动态电压与频率调整模式:在动态功率模式中,通过提供不同的电压,不同的系统时钟频率,芯片可以工作于不同的主频上,可以根据系统的负载情况,动态调 整芯片的工作状态,只要能满足系统运行需要即可,从而避免了系统一直高速运行下的功率浪费。 3.时钟与电源开关:对于一嵌入式系统,可能存在很多外围设备,但它们不需要同时使用,对于不需要使用的设备,可以停止给它们提供时钟与电源,或让相应的 设备进入DEEP SLEEP状态,仅仅提供最基本的时钟和电压,达到减少功耗的目的。 Android的电源管理还是比较简单的, 主要就是通过锁和定时器来切换系统的状态,使系统的功耗降至最低,整个系统的电源管理架构图如下: (注该图来自Steve Guo) Kernel层[针对Android Linux 2.6.28内核]: 1、初始化 suspend 和resume函数 static struct platform_driver mxcbl

Android NDK开发轻松入门

孤街浪徒 提交于 2020-02-05 03:49:35
简介 : AndroidNDK 是能使 Android 应用开发者把从 c/c++ 编译而来的本地代码嵌入到应用包中的一系列工具的组合。 注意 : AndroidNDK 只能用于 Android1.5 及以上版本中。 I. Android NDK 目标 : Android 虚拟机允许你的应用在源码中通过 JNI 调用本地代码(c/c++)中实现的方法们。概括起来,这表示: --你的应用的java源代码中要声明一个或多个方法,这些方法前面需有 'native' 关键字,这表明它们被本地代码实现。如: native byte[] loadFile(String filePath); -- 你必须提供本地的共享库(.so),库中包含这些方法的实现。这个库将会打包你的应用的 .apk 中。这个库的命名必须符合标准的 Unix 命名规则,也就是: lib<something>.so 这种形式。并且还要包含一个标准的 JNI 入口。例如: libFileLoader.so -- 你的应用必须显式的加载本地库。例如,要在应用启动时加载,只需简单地在代码中增加如下语句: static { System.loadLibrary("FileLoader"); } 注意写库的名字时你不需要使用 'lib' 前缀和 '.so' 后缀。 AndroidNDK 只是 AndroidSDK 的一个组件,它帮助你

NDK的讲义

老子叫甜甜 提交于 2020-02-05 03:48:29
介绍: Android SDK是一个允许Android应用开发人员使用C或C++源文件编译并嵌入到本机源代码中的应用程序包的一组工具。 重要说明: Android NDK只能用于android 1.5以上版本 1. Android NDK的目的: Android虚拟机允许你的应用程序源代码通过JNI调用在本地实现的源代码,简单的说,这就意味着: 你的应用程序将声明一个或多个用’native’关键字的方法用来指明它们是通过本地代码实现的 例如:native byte[] loadFile(String filePath) 你必须提供包含实现这些方法的共享库(就是.so),将共享库打包到你的应用程序包apk中,这些库文件必须根据标准的Unix约定来命名为 lib<something>.so,并且是需要包含一个标准的JNI的接口,例如 libFileLoader.so 你的应用程序必须明确的装载这些库文件(.so文件),比如,在程序的开始装载它,只需要简单的添加几句源代码: 1 static { 2 System.loadLibrary(“FileLoader”); 3 } 注意:这里你不必再将前缀lib和后缀.so写入。 Android NDK对于Android SDK只是个组件,它可以帮你: 生成的JNI兼容的共享库可以在大于Android1.5平台的ARM CPU上运行

Android学习——第一个NDK程序

荒凉一梦 提交于 2020-02-05 03:38:20
  在前面的学习中,我们已经讲解了关于NDK编程的环境搭建流程,简单的使用我们也通过官网本身自带的例子进行说明了。可是相信大家一定还存在这么的一个疑惑:“如果我要自己利用NDK编写一个Android应用,具体应该怎么做?有什么要求”。OK,别担心,下面就让我们一起来利用NDK来编写一个简单的Android应用。 1 创建一个新的Project 1) 通过以下命令创建一个新的Android Project (详细的使用方法,大家可以回去重新参考博文《 Android学习第二天-android常用命令 》) android create project -n myfirstndk -t 1 -p ./myfirstndk -k cn.uc.myjni -a MainActivity 当Project创建成功后,我们可以通过查看文件夹发现它的大体架构如下图:    2 开始Coding 1) 进入该项目的MainActivity.java所在的目录下,新建一个定义本地方法的类 NumberSum.java ,输入以下代码: 1 package cn.uc.myjni; 2 3 public class NumberSum { 4 5 // 声明一个本地方法 6 public native int add (int a, int b); 7 8 // 加载名为 libnumber_sum