2017年6月13日 前言 前几日在改Bug时看到好多调试时用的日志语句都被一个日志开关控制着它的执行权.形如: if(Constants.LOG_TAG){ Log.d(TAG, "Initialize finish! index:" + idx); } 又为了方便日后遇到问题时的分析,还要加上很多类似的日志语句.这时突然很好奇“大量的”条件判断语句需要多消耗多少系统资源,以及不同的条件表达式占用系统资源的差异情况.为此,特意设计了一个简单的小实验,通过取多组不同环境下这几种情形的耗…
原文请看 Android平台下OpenGL初步 本文只关注于如何一步步实现在Android平台下运用OpenGl. 1.GLSurfaceView GLSurfaceView是Android应用程序中实现OpenGl画图的重要组成部分.GLSurfaceView中封装了一个Surface.而android平台下关于图像的现实,差不多都是由Surface来实现的 2.Renderer 有了GLSurfaceView之后,就相当于我们有了画图的纸.现在我们所需要做的就是如何在这张纸上画图.所以我们需…
在工科类项目中,嵌入式系统与软件系统或后台数据库之间的信息传输是实现“物联网”的一种必要的途径,对已简单概念的物联网,通常形式都是一个单片机/嵌入式系统实现数据的采集及其处理,通过蓝牙,wifi或者是ZigBee等无线模块进行传输,再由一些软件端来显示数据实现人机交互. 例如在进行的一个项目中,需要在stm32上获取位置的信息,再传输到移动设备或者电脑端来显示数据,选用wifi来作为传输媒介,那么就要考虑wifi间数据传输的形式——TCP或者UDP传输. 简单记录一下在实际开发中,利用Andro…
通过adbi,可以对native层的所有代码进行hook.但对于Android系统来说,这还远远不够,因为很多应用都还是在Dalvik虚拟机中运行的. 那么,有没有什么办法可以对Dalvik虚拟机中跑的代码进行hook呢? adbi的作者再接再厉,写了一个叫做ddi(Dynamic Dalvik Instrumentation)的框架,可以从这里获得其源代码:https://github.com/crmulliner/ddi. 首先,大家知道,在Dalvik虚拟机中每一个方法都由一个称作Meth…
在<Android Studio增加NDK代码编译支持--Mac环境>和<Mac平台下Opencv开发环境搭建>两篇文章中,介绍了如何使用NDK环境和Opencv环境搭建与测试使用,现在,在PC端对图像处理算法测试没问题后,该在移动端进行功能移植了,ios平台的很简单,直接把类库拷进工程就行了,android的稍微麻烦点,这里就以android平台为例说明移植步骤. 为了更好的模块移植,这里使用Android源码的make文件写法:*.mk,Android源码是一个很大的工程,它的…
Android OpenGL ES 开发教程 从入门到精通 http://blog.csdn.net/zhoudailiang/article/details/50176143 http://blog.csdn.net/jason0539/article/details/9164885 1.GLSurfaceView GLSurfaceView是Android应用程序中实现OpenGl画图的重要组成部分.GLSurfaceView中封装了一个Surface.而android平台下关于图像的现实,…
ref: Jayway Team Blog中OpenGL ES简明开发教程https://blog.jayway.com/tag/opengl-es/ OpenGL ES 开发教程http://www.guidebee.info/wordpress/%E6%95%99%E7%A8%8B/android-opengl-es-%E5%BC%80%E5%8F%91%E6%95%99%E7%A8%8B http://blog.csdn.net/jason0539/article/details/9164…
JNI是Java Native Interface的缩写,通过JNI可以方便我们在Android平台上进行C/C++编程.要用JNI首先必须安装Android的NDK,配置好NDK环境之后就可以在Eclipse下进行C/C++开发了. 其实JNI的原理很容易理解,其本质就是在Java层定义一个接口,同时在C层用C/C++代码实现该接口的功能并编译成动态链接库,这样 Activity就可以通过Java层接口调用生成的动态链接库,完成相应的功能.简单地说就是两点:(1)定义Java接口(JNI),(…
Android通过OpenGL包含了对高性能2D和3D图形的支持,尤其支持OpenGLES API.OpenGL是一个跨平台的图形API,提供了软件操作3D图形硬件的接口.OpenGLES是一个专用于嵌入式设备的OpenGL规格.从android1.0开始支持OpenGLES 1.0和1.1API规格.从Android2.2 (API Level 8)开始,框架支持OpenGLES 2.0 API规格. Android框架所提供的API与(JAVA)J2MEJSR239 OpenGL ES AP…
首先建立一个包名为package com.JiajiaCy.CallActivity; package com.JajaCy.CallActivity; import org.apache.cordova.CallbackContext; import org.apache.cordova.CordovaPlugin; import org.apache.cordova.PluginResult; import org.json.JSONArray; import org.json.JSONEx…