- 博客(30)
- 资源 (7)
- 收藏
- 关注
转载 关于java的JNI和android的NDK释疑
安卓下jni和ndk到底有什么区别呢?不都是在android里调c/c++的东西?jni 是 java 调用 native interface 的 功能 ,是 java的 特性 ndk 是 android 提供的 底层 开发包 NDK(Native Development Kit)“原生”也就是二进制 android常用的开发方式是java封装的库,而这些库的底层实现是由C/C++实现,如媒
2015-11-01 14:01:23
386
原创 Android NDK 开发
记录Android NDK开发相关知识,前期环境配置 自行谷歌Android NDK 提供的组件Android NDK 是包含一个API、交叉编译器、链接程序、调试器、构建工具、文档和示列应用程序的综合工具集,以下是Android NDK的一些主要组件ARM、X86和MIPS交叉编译器构建系统Java 原生接口头文件C 库Math库POSIX 线程最小的C++库ZLib压缩库动态
2015-11-01 14:00:17
519
转载 Pool, SimplePool与SynchronizedPool
转载自:http://androidigging.blog.51cto.com/2753843/1426766因为硬件资源的限制,Android在很多地方都使用了Pool的,特别是对于需要通过native的方式调用资源,比如专门用于获取Touch、Flinging以及其他手势速度的VelocityTracker类,文档中指明了调用方式必须是: // 创建 VelocityTracker
2015-07-30 00:06:25
938
原创 Android中对象池的使用
对象池的使用在android开发中经常会发现当日志中出现大量GC时我们的应用常常出现卡顿。这是因为当虚拟机进行垃圾回收操作时应用所有线程都会暂停,完成后恢复。如果出现大量GC操作时主线程频繁暂停就会影响应用性能了。所以我们在开发中要尽量避免。了解Android 垃圾回收Android里面是一个三级Generation的内存模型,最近分配的对象会存放在Young Generation区域,当这个对象在
2015-07-29 23:57:09
3090
转载 欢迎使用优快云-markdown编辑器
java编译原理Java 虚拟机(JVM)是可运行Java 代码的假想计算机。只要根据JVM规格描述将解释器移植到特定的计算机上,就能保证经过编译的任何Java代码能够在该系统上运行。本文首先简要介绍从Java文件的编译到最终执行的过程,随后对JVM规格描述作一说明。 一.Java源文件的编译、下载 、解释和执行 Java应用程序的开发周期包括编译、下载 、解释和执行几个部分。
2015-07-22 08:58:44
286
原创 Android:Layout_weight的理解及遇到的问题
最近写Demo,突然发现了Layout_weight这个属性,发现网上有很多关于这个属性的有意思的讨论,可是找了好多资料都没有找到一个能够说的清楚的,于是自己结合网上资料研究了一下,终于迎刃而解,写出来和大家分享。首先看一下Layout_weight属性的作用:它是用来分配属于空间的一个属性,你可以设置他的权重。很多人不知道剩余空间是个什么概念,下面我先来说说剩余空间。看下面代码:
2015-04-08 18:50:57
397
转载 Android中 android:layout_weight 属性
linearLayout中包含有weight的child时,linearLayout会measure两次:设屏幕宽度为X第一次:button1 的measuredWidth为X, button2也为X (因为用了weight,所以linearLayout每次measure child时不考虑前一个已经占用的大小),total_width为2X第二次:计算delta=x-
2015-04-08 18:46:41
397
原创 ViewPager实现引导界面,引导的指针点(Dot)带移动动画
近期在用许多软件时发现,很多软件都有用户引导画面,基本上就是几张图片用来滑动,并且每张图片上都有一个引导的指针点,但是很多软件(包括一些大公司的软件)引导的指针都是没有动画的,甚至是画在图片上的,每次看到这都感觉对用户很不好,今天就打算写一个指针带移动动画的引导界面,以后拿来就用。package com.example.tiyan_test;import java.util.Array
2015-01-06 12:44:47
987
原创 android 避免线程的重复创建
在android开发中,一说起线程的使用,很多人马上想到new Thread(){...}.start()这种方式。这样使用当然可以,但是多次使用这种方式,会创建多个匿名线程。使得程序运行起来越来越慢。因此,可以考虑使用一个Handler来启动一个线程,当该线程不再使用就删除,保证线程不会重复创建。一般会使用Handler handler = new Handler(){...}创建H
2014-11-19 11:10:49
7220
原创 android 屏幕截图时,如何更改截图内容,将两个bitmap合并一起显示图像
android 屏幕截图时,如何更改截图内容,将两个bitmap合并一起显示图像
2014-10-19 11:44:31
1336
转载 Android permission 访问权限大全
程序执行需要读取到安全敏感项必需在androidmanifest.xml中声明相关权限请求, 完整列表如下:android.permission.ACCESS_CHECKIN_PROPERTIES允许读写访问”properties”表在 checkin数据库中,改值可以修改上传( Allows read/write access to the “properties” table
2014-10-17 10:44:57
454
原创 Activity的基本用法
二、Activity的用法:(一)、建立、配置和使用Activity:1、创建Activity:创建Activity:继承于Activity,重写onCreate()方法。2、配置Activity:在AndroidManifest.xml文件中进行配置。如果没有配置,而又在程序中启动了该Activity,将抛出异常(ActivityNotFoundExc
2014-04-27 22:11:27
1163
原创 创建对象在内存中,程序的执行过程
创建对象是为了封装数据,比如:class Person{ String name; public static void show(){ system.out.println("hello") } } 若要具体表示哪个人,就需要建立对象如张三 李四Person p = new Person();p.setna
2014-04-27 22:02:01
651
原创 编程语言学习的一点心得
刚开始学java时 ,在书店买了一本《疯狂java》书里将的很细致,但对于自己毫无基础的人来说,java的基础知识还好理解,到后来的面向对象,集合等知识理解的就很慢,导致看书的效率很低,紧接着又在网上找了相关视频,发现看完视频讲解后,再去看书会看的很快,而且对书里的知识理解的效率也好;所以学习一门新的语言或新的知识,最好先从视觉和听觉方面产生影响,也就是看视频,更好的是真人去教,有高手去带,不过要
2014-03-17 00:04:01
610
原创 构造函数的一些要点
声明一个类时,总是对构造函数的返回值有一些不清楚的地方,后来编程时总结了一些需要注意的地方 构造函数不能定义返回值类型,也不能使用void定义构造器没有返回值,如果为构造器定义了返回值,编译器会把所谓的构造器当做方法来处理;在查阅相关书籍时(《疯狂java》)了解到,类的构造函数是有返回值的,当我们用new关键字来调用构造器时,构造器返回该类的实例,可以把这个类的实例当成构造器的返回
2014-03-10 23:34:12
583
原创 算法-排序-选择排序
public class XuanZe2 { public static void main(String[] args) { int[] array = { 10, 7, 1, 4, 10, 1, 5, 5, 3, 1 }; for (int i = 0; i < array.length; i++) {// i从0开始,代表第几次 int k = i; // k代表被比
2014-03-10 23:18:30
478
原创 算法-二分法查找数据
public class ErFenfa { /** * 二分法查找数据:在有序的数组中,定义一个最低点,最高点,还有中间点。 * 中间点对应的数据和n比较。如果n的值大,就在右部分查找,如果小,就在左部分查找 * 二分法查找前提是必须是有序的数组 * @param args */ public int mySearch(int[] array, int n) { i
2014-03-10 23:17:23
761
原创 算法-排序
插入排序public class Charu { /** * 插入排序:从第2个数开始,向之前的数列中插入 * * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int[] array = { 10, 7, 1, 4, 10,
2014-03-10 23:15:41
522
原创 万年历
/** * 我的万年历 * * 1.1900年1月1日:星期一: * * 2.2014,年2月的日历: 2014年1月31日到1900年1月1日的总天数 除7 ,余数就是空格数 * * * 整年:1900-2013年整年:—+365,+366 正月:1月到month-1的月份的总天数 * * @author Administrator *
2014-03-09 21:57:49
932
原创 暴力破解法求最大公约数+辗转相除法求最大公约数+暴力破解法求最下公倍数
public class HomeWork { /** * 暴力破解法求最大公约数 */ public static int getMaxPact(int m, int n) { int res = 0; for (int i = m > n ? n : m; i >= 1; i--) { if (m % i == 0 && n % i == 0) { res =
2014-03-09 21:56:30
785
原创 求2+22+222+2222+22222的值
import java.util.*;public class Demo35 { public static void main(String[] args) { //练习1:求2+22+222+2222+22222的值 Scanner scan = new Scanner(System.in); System.out.println("请输入一个基数(0-9):");
2014-03-09 21:53:54
4071
原创 for打印菱形
public class Demo30 { public static void main(String[] args) { //用*打印菱形 //上三角 for(int i = 1;i <= 4;i ++){//上三角的行数 for(int j = 1;j<= 4-i;j++){//先打印空格 //i:1,j:1,2,3 System.out.print
2014-03-09 21:53:21
610
原创 质数(或素数)(多种方法)
public class Demo29 { public static void main(String[] args) { //求2-100之内的素数(质数)。 int c1 = 0;//统计共有多少个数数 for(int i = 2;i <= 100;i++){ int count = 0;//表示每个数字没整除的次数的计数器 for(int j = 2; j
2014-03-09 21:49:13
590
原创 有1、2、3、4四个数字,输出所有能组成的互不相同且无重复的三位数。
public class Demo27 { public static void main(String[] args) { int count = 0; for(int i = 1;i < 5; i++){ for (int j = 1; j < 5 ;j++ ) { for(int k = 1;k < 5;k++){ if(i != j && k
2014-03-09 21:44:27
1350
原创 给定月份,判断该月有多少天。(给定年份,给定月份,判断从1月到当前月的上个月的总天数)。
import java.util.*;public class Demo25 {public static void main(String[] args) {Scanner scan = new Scanner(System.in);System.out.println("请输入一个年份:");int year = scan.nextInt();//2014System.out.
2014-03-09 21:42:10
2642
原创 学习之路,一个无编程经验的理科生的计算机学习之路
本人大学本科,机械专业,在此次学习编程时以工作一年,凭着对互联网的兴趣,毅然决然辞掉工作,开始我的学习编程之旅,开始时对编程毫无感觉,别人几分钟做出来的题目,自己要花上几倍的时间才能弄出来,目前想记录一下,学习编程时练习过的题目、代码、感想、以便以后方便回想。
2014-03-09 21:22:18
313
ViewPage引导界面,带指针移动动画
2015-01-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人