05 2017 档案
摘要:1.1.1System.arraycopy的用法 int[] src = {1,3,5,7,9,11,13,15,17}; int[] dest = {2,4,6,8,10,12,14,16,18,20}; //从src中的第一个元素起复制三个元素,即1,3,5复盖到dest第2个元素开始的三个元素
阅读全文
摘要:这里简单记录下两种转换方式: 第一种: 1、int与byte[]之间的转换(类似的byte short,long型) [java] view plain copy /** * 将int数值转换为占四个字节的byte数组,本方法适用于(低位在前,高位在后)的顺序。 和bytesToInt()配套使用
阅读全文
摘要:背景:最近电脑升级了系统macOS Sierra 10.12.1;Xcode 也升级到了Version 8.1 (8B62)。 问题:使用Application Loader3.0 上传应用到iTunes connect 遇到报错:ERROR ITMS-90168:"The binary you u
阅读全文
摘要:1.在java里创建一个类,在类里添加静态方法调用c++的类库dll,在java里创建要返回数组的函数。在java的main方法里创建返回后的测试方法。 Java代码 package cn.gov.cma.cnn.webgis.active; public class TestHello { //调
阅读全文
摘要:为了实现像qq或者微信输入框的效果,当在EditText输入字符串时发送按钮显示,当输入框字符消除掉时按钮改变。所以这时候我就要用到addTextChangedListener 用它来监听用户输入状态。可以在监听中改变用户输入的内容或者提示用户输入内容不合法等等 EditText editText
阅读全文
摘要:1 应用层代码 NdkParam.java是JNI函数的调用类,它的代码如下: Person.java是用来在Java和JNI之间传递的数据类,它的代码如下: 2 JNI层代码 ndk_param.c是实现并注册JNI的文件,它的代码如下: Android.mk的代码如下: 3 运行工程 logca
阅读全文
摘要:JNI初步入门后,在传递数据的时候,遇到一个需求:有多个数据需要在Java与C代码之间进行传递。如果都做为函数参数传入,则函数很长很难看,并且多个数据的返回也不好实现。所以想到了把数据打包后传递。这在C语言中就是结构体,在Java中就是类了。 我们要做的工作就是,先确定要传递的数据,然后相应在C与Java中定义相应的数据类型,然后通过JNI进行数据对应。下面以一个例程来逐步说明。 为了更好的说...
阅读全文
摘要:通过使用合适的JNI函数,你可以创建Java对象,get、set 静态(static)和 实例(instance)的域,调用静态(static)和实例(instance)函数。JNI通过ID识别域和方法,一个域或方法的ID是任何处理域和方法的函数的必须参数。 下表列出了用以得到静态(static)和
阅读全文
摘要:在JNI中访问JAVA类中的整型、浮点型、字符型的数据比较简单,举一个简单的例子,如下: 但是对于一维数组和二维数组在JNI中的使用方法跟上面的有一定的差别,也有点麻烦,下面我们就看看怎么使用。 在网上找到的一段代码,基上显示了JNI中二维数组的使用,觉得不错,我又将代码进行了一些整理,如下: 其中
阅读全文
摘要:学习Android Jni时,一个二维 整数 数组的传递花了我好长时间,在网上查的资料都不全,当然最后是成功了,写在这里是为了自己记住,当然有人搜索到并利用了我会很高兴。 in Android Java file public native boolean add(int[][] qizidata,
阅读全文
摘要:JNI初步入门后,在传递数据的时候,遇到一个需求:有多个数据需要在Java与C代码之间进行传递。如果都做为函数参数传入,则函数很长很难看,并且多个数据的返回也不好实现。所以想到了把数据打包后传递。这在C语言中就是结构体,在Java中就是类了。 我们要做的工作就是,先确定要传递的数据,然后相应在C与J
阅读全文
摘要:Android 4.3 (API Level 18) introduces built-in platform support for Bluetooth Low Energy in the central role and provides APIs that apps can use to di
阅读全文
摘要:相信在使用jni的过程中,总是要传递各种各样的类型,在这其中,我也碰到了一些问题。 简单的传一些内容,相信在网上一搜一大把。 所以我们就来说说。传递对象中包含arraylist吧。 在这里先给大家一个连接,显示一些jni的传递:http://blog.csdn.NET/u_xtian/article
阅读全文
摘要:这里不在重复Java JNI 的开发过程了,不熟悉的同学请参考:Java JNI HelloWorld 直接上主要代码: ArrayJNI.Java package com.example.jni; public class ArrayJNI { static { System.loadLibrar
阅读全文
摘要:在JNI中,当我们使用GetFieldID/GetStaticFieldID或GetMethodID/GetStaticMethodID及定义JNINativeMethod等时,我们需要表示成员变量的类型,或函数传入参数或返回的类型。JNI把Field的类型,或函数传入参数或返回值的类型进行简写以c
阅读全文
摘要:JNI 编程实现了 native code 和 Java 程序的交互,因此 JNI 代码编程既遵循 native code 编程语言的编程规则,同时也遵守 JNI 编程的文档规范。在内存管理方面,native code 编程语言本身的内存管理机制依然要遵循,同时也要考虑 JNI 编程的内存管理。 本
阅读全文
摘要:项目决定移植一款C++开源项目到Android平台,开始对JNI深入研究。 JNI是什么? JNI(Java Native Interface)意为Java本地调用,它允许Java代码和其他语言写的代码进行交互,简单的说,一种在Java虚拟机控制下执行代码的标准机制。 NDK是什么? Android
阅读全文
摘要:本文原创,转载请注明出处:http://blog.csdn.NET/qinjuning 在掌握了JNI函数的使用和相关类型的映射后,以及知晓何利用javah工具生成对应的jni函数以及如何生成动态 链接库 (windos下就是.dll库,Linux就是.so库了,不懂在Window下生成dll动态库
阅读全文
摘要:本文原创,转载请注明出处:http://blog.csdn.NET/qinjuning 在Java存在两种数据类型: 基本类型 和 引用类型 ,大家都懂的 。 在JNI的世界里也存在类似的数据类型,与Java比较起来,其范围更具严格性,如下: 1、primitive types 基本数据类型,如:i
阅读全文
摘要:本文原创,转载请注明出处:http://blog.csdn.net/qinjuning 最近一段时间,在工作方面比较闲,分配的Bug不是很多,于是好好利用这段时间就着源代码看了些许模块, 主要方式 还是贼看贼看代码, 同时利用烧机的便利,加Log观看,基本上都能弄个脸熟 。心里想着该写点什么了?可是
阅读全文
摘要:1、安卓版本APP上架并生成二维码问题:安卓版本上架国内市场,这个情况比较复杂一些,比如百度,网址是以上传APP生成的一个编号来进行的,每次升级更新后都发生了变化,也就相当于每次升级后网址发生改变(比如百度应用市场上应用APP的网址:http://shouji.baidu.com/software/
阅读全文
摘要:在Java中字节与十六进制的相互转换主要思想有两点:1、二进制字节转十六进制时,将字节高位与0xF0做"&"操作,然后再左移4位,得到字节高位的十六进制A;将字节低位与0x0F做"&"操作,得到低位的十六进制B,将两个十六进制数拼装到一块AB就是该字节的十六进制表示。2、十六进制转二进制字节时,将十
阅读全文
摘要:1.基本类型可以分为三类,字符类型char,布尔类型boolean以及数值类型byte、short、int、long、float、double。数值类型又可以分为整数类型byte、short、int、long和浮点数类型float、double。JAVA中的数值类型不存在无符号的,它们的取值范围是固
阅读全文
摘要:Java提供的位运算符有:左移( << )、右移( >> ) 、无符号右移( >>> ) 、位与( & ) 、位或( | )、位非( ~ )、位异或( ^ ),除了位非( ~ )是一元操作符外,其它的都是二元操作符。 1、左移( << ) Test1、将5左移2位: [java] view plai
阅读全文
摘要:搭配使用 Android Studio 2.2 或更高版本与 Android Plugin for Gradle 版本 2.2.0 或更高版本时,您可以将 C 和 C++ 代码编译到 Gradle 与 APK 一起封装的原生库中,将这类代码添加到您的应用中。您的 Java 代码随后可以通过 Java
阅读全文
摘要:一、CoordinatorLayout有什么作用 CoordinatorLayout作为“super-powered FrameLayout”基本实现两个功能: 1、作为顶层布局 2、调度协调子布局 使用CoordinatorLayout需要在Gradle加入Support Design Libra
阅读全文
摘要:版权声明:本文为博主原创文章,未经博主允许不得转载。 版权声明:本文为博主原创文章,未经博主允许不得转载。 一. 修改本机蓝牙设备的可见性 二. 扫描周围可用的蓝牙设备 Eg: 一. 清单文件AdroidManifest.xml: [java] view plain copy <?xml versi
阅读全文
摘要:版权声明:本文为博主原创文章,未经博主允许不得转载。 版权声明:本文为博主原创文章,未经博主允许不得转载。 一. 什么是蓝牙(Bluetooth)? 1.1 BuleTooth是目前使用最广泛的无线通信协议 1.2 主要针对短距离设备通讯(10m) 1.3 常用于连接耳机,鼠标和移动通讯设备等. 二
阅读全文
摘要:一、什么是Surface 简单的说Surface对应了一块屏幕缓冲区,每个window对应一个Surface,任何View都要画在Surface的Canvas上(后面有原因解释)。传统的view共享一块屏幕缓冲区,所有的绘制必须在UI线程中进行。 在SDK的文档中,对Surface的描述是这样的:“
阅读全文
摘要:这几个概念比较绕, 又比较相近。 初看比较糊涂, 把握关键点就好。 关键字 View SurfaceViewGLSurfaceViewTextureView这三个后缀都是View, 所以这三个东西都是用来显示的, 和普通的View差不多, 类似TextView等. 通过历史来说明:SurfaceVi
阅读全文
摘要:SurfaceView, GLSurfaceView, SurfaceTexture以及TextureView是Android当中名字比较绕,关系又比较密切的几个类。本文基于Android 5.0(Lollipop)的代码理一下它们的基本原理,联系与区别。 SurfaceView从Android 1
阅读全文
摘要:如果你想显示一段在线视频或者任意的数据流比如视频或者OpenGL 场景,你可以用android中的TextureView做到。 TextureView的兄弟SurfaceView 应用程序的视频或者opengl内容往往是显示在一个特别的UI控件中:SurfaceView。SurfaceView的工作
阅读全文
摘要:Google Developers中国网站发布 用户评价: / 55 差好 最后更新于 2016年12月09日 点击数:15209 我们很高兴地宣布,Google Developers 中国网站 (developers.google.cn) 正式发布! Google Developers 中国网站是
阅读全文