Android开发
文章平均质量分 81
hopehe888999
这个作者很懒,什么都没留下…
展开
-
android 64位机子兼容32位.so库文件
猴子在调用高德地图的时候,遇到一个操作系统兼容问题,异常堆栈说是找不到so库文件,猴子就不懂了,明明有他说的那个文件。 后来和同行交流,他们的jniLibs中有一个arm64-v8a的文件夹用来存放64位操作系统的so库文件,于是猴子自己建了一个arm64-v8a文件夹,因为高德并没有把64位的so库文件公布出来,所以,猴子直接把他们唯一的so库考到了arm64-v8a文件夹下...转载 2019-02-22 14:31:13 · 1189 阅读 · 0 评论 -
Android 五中数据传递方式汇总
Android开发中,在不同模块(如Activity)间经常会有各种各样的数据需要相互传递,我把常用的几种方法都收集到了一起。它们各有利弊,有各自的应用场景。我现在把它们集中到一个例子中展示,在例子中每一个按纽代表了一种实现方法。1. 利用Intent对象携带简单数据利用Intent的Extra部分来存储我们想要传递的数据,可以传送int, long,转载 2013-12-17 17:04:49 · 981 阅读 · 0 评论 -
Android 网络学习
Android中提供的HttpURLConnection和HttpClient接口可以用来开发HTTP程序。以下是本人在学习中的总结与归纳。1. HttpURLConnection接口 首先需要明确的是,Http通信中的POST和GET请求方式的不同。GET可以获得静态页面,也可以把参数放在URL字符串后面,传递给服务器。而POST方法的参数是放在Http请求中。因此,在编程之前,应转载 2013-12-16 14:29:31 · 759 阅读 · 0 评论 -
Android开发:定制自己的Camera
在Android的hardware包中有一个Camera类。这个类就是获取Camera服务的,可以定制Camera等。可以通过open()方法获取其实例。在使用这个类是需要在AndroidManifest.xml文件中加入相应的权限和特性。如: uses-permission android:name = "android.permission.CAMERA" /> u转载 2013-12-05 23:48:02 · 1116 阅读 · 0 评论 -
Android滑动效果入门篇———ViewFlipper实现滑动效果
ViewFilpper 是Android官方提供的一个View容器类,继承于ViewAnimator类,用于实现页面切换,也可以设定时间间隔,让它自动播放。又ViewAnimator继承至于FrameLayout的,所以ViewFilpper的Layout里面可以放置多个View,继承关系如下:本示例通过ViewFlipper和GestureDetector.O转载 2013-12-09 17:41:13 · 817 阅读 · 0 评论 -
android中Touch事件的处理逻辑
android中的事件类型分为按键事件和屏幕触摸事件,Touch事件是屏幕触摸事件的基础事件,有必要对它进行深入的了解。一个最简单的屏幕触摸动作触发了一系列Touch事件:ACTION_DOWN->ACTION_MOVE->ACTION_MOVE->ACTION_MOVE...->ACTION_MOVE->ACTION_UP当屏幕中包含一个ViewGroup,而这个ViewGrou转载 2013-12-09 22:49:45 · 722 阅读 · 0 评论 -
Android Animation学习笔记
关于动画的实现,Android提供了Animation,在Android SDK介绍了2种Animation模式:1. Tween Animation:通过对场景里的对象不断做图像变换(平移、缩放、旋转)产生动画效果,即是一种渐变动画;2. Frame Animation:顺序播放事先做好的图像,是一种画面转换动画。动画类型下面先来看看Android提供的动画类型。转载 2013-12-09 16:55:01 · 647 阅读 · 0 评论 -
在程序中设置android:gravity 和 android:layout_Gravity属性
在进行UI布局的时候,可能经常会用到 android:gravity 和 android:layout_Gravity 这两个属性。 关于这两个属性的区别,网上已经有很多人进行了说明,这边再简单说一下。 (资料来自网络) LinearLayout有两个非常相似的属性:android:gravity与android:layo转载 2013-12-09 16:52:00 · 662 阅读 · 0 评论 -
Android获取状态栏的高度
项目中用到了,网上找到一段代码,能够有效的获取状态栏的高度,记录备忘。[java] view plaincopy/** * 获取状态栏高度 * * @return */ public int getStatusBarHeight() {原创 2013-04-19 15:26:45 · 1474 阅读 · 2 评论 -
Android SQlite 应用详解
上次我向大家介绍了SQLite的基本信息和使用过程,相信朋友们对SQLite已经有所了解了,那今天呢,我就和大家分享一下在Android中如何使用SQLite。现在的主流移动设备像Android、iPhone等都使用SQLite作为复杂数据的存储引擎,在我们为移动设备开发应用程序时,也许就要使用到SQLite来存储我们大量的数据,所以我们就需要掌握移动设备上的SQLite开发技巧。对于An转载 2013-09-22 16:56:57 · 777 阅读 · 0 评论 -
SQlite 数据库简介
大家好,今天来介绍一下SQLite的相关知识,并结合Java实现对SQLite数据库的操作。SQLite是D.Richard Hipp用C语言编写的开源嵌入式数据库引擎。它支持大多数的SQL92标准,并且可以在所有主要的操作系统上运行。SQLite由以下几个部分组成:SQL编译器、内核、后端以及附件。SQLite通过利用虚拟机和虚拟数据库引擎(VDBE),是调试、修改和扩展SQLi转载 2013-09-22 15:21:18 · 1051 阅读 · 0 评论 -
Android获得Root权限
学习Android文件系统的时候找不到创建的文件,花了两个多小时终于给android模拟器赋予了root权限了,首先要感谢下面2位网友:http://hiapk.com/bbs/thread-763853-1-1.htmlhttp://blog.csdn.net/biexf/archive/2010/11/29/6043424.aspx由于是按照别人的方法做的,所以就没必要原创 2013-09-22 13:52:27 · 1007 阅读 · 0 评论 -
Android文件存储
Internal Storage内部存储空间 所谓的内部存储与外部存储,是指是否是手机内置。手机内置的存储空间,称为内部存储,它是手机一旦出厂就无法改变,它也是手机的硬件指标之一,通常来讲手机内置存储空间越大意味着手机价格会越贵(很多地方把它称为手机内存,但我们做软件的知道,这并不准确,内存是指手机运行时存储程序,数据和指令的地方;这里应该是手机内部存储的简称为内存,而并非转载 2013-09-22 10:37:54 · 825 阅读 · 0 评论 -
Android Io 整理
[html] view plaincopypackage com.ghg.IO; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.i转载 2013-09-17 00:27:52 · 776 阅读 · 0 评论 -
Android 文件下载与解压缩
DownLoaderTask.java[java] view plaincopypackage com.johnny.testzipanddownload; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import转载 2014-02-10 13:19:59 · 6159 阅读 · 2 评论 -
8步打开android之门 NDK入门
前不久我们为大家介绍过在MyEclipse 8.6上搭建Android开发环境,本文为一篇外文翻译,我们将介绍如何学习安装 Android NDK 并开始使用它。在这一教程结束后,你将创建你自己的项目,从 Java 代码简单地调用原生 C 语言代码。51CTO推荐专题:Android开发应用详解教程细节技术:Android SDK、NDK、C 语言难度:进阶转载 2014-02-19 14:45:15 · 865 阅读 · 0 评论 -
java.lang.UnsatisfiedLinkError 解决方法
Java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.pckgname.live-2/base.apk"],nativeLibraryDirectories=[/data/app/com.pckgname.live-2/lib/arm64, /ve转载 2016-09-07 21:16:04 · 2773 阅读 · 0 评论 -
Android Studio .so 文件提交
在开发当中,偶尔或经常使用.so文件这样问题就来了,在团队管理时.so文件怎么提交呢???愚人亲身实践:方法一:如果你的eclipse安装有svn插件,可以用之!Windows-->preference-->Team-->Ignored Resource按照这个流程你会看到右面有很多格式的文件,其中就包括.so文件!其前面的复选框就是转载 2016-07-13 00:58:22 · 1891 阅读 · 0 评论 -
Android 新浪微博 授权失败 21337
新浪微博 android 开发中 oauth2 认证有两种 一种是code 一种的ssocode的一种 最常用 sso的需要安装新浪微博客户端3.0以上刚申请的新应用复用以前的代码就报 permision denied,百思不得其解。新浪微博开发的不向前兼容的么,后来查看得知,需要把授权参数从原来的 token 替换为code parameters.a转载 2015-08-18 17:40:46 · 3470 阅读 · 0 评论 -
Method called after release()
最近在做公司的一个项目模块时要用到相机,由于采用了以前的代码在UI线程中操作相机时,经常会碰到程序ANR的情况,后来索性一狠心改,翻看google的官方文档说明,官方是建议用异步线程对camera 进行操作,后来改用异步任务操作camera :/** * 打开相机工具类,放在线程中执行,防止阻塞主线程 * @author hopehe */public class OpenCameraWo原创 2015-07-30 20:16:15 · 35444 阅读 · 0 评论 -
TabHost中的Activity调用overridePendingTransition()方法无效
在定义的MyActivity中,继承的是TabActivity,添加了几个Activity,比如说A、B、C,采用了TabHost管理切换不同的主页面。现在A如果展示的是一个列表,点击每一项,可以进入A的子页面,这时候希望具有自定义的动画效果,但是发现仅仅使用overridePendingTransition()却没有效果。网上查阅了些资料,发现这个可以用,于是对其稍微整理了下,没转载 2015-05-13 14:53:44 · 922 阅读 · 0 评论 -
Android Service 不被杀掉方法(broadcast+system/app)
Service简介service是在一段不定的时间运行在后台,不和用户交互应用组件。每个Service必须在manifest中 通过来声明。可以通过contect.startservice和contect.bindserverice来启动。和其他的应用组件一样,运行在进程的主线程中。这就是说如果service需要很多耗时或者阻塞的操作,需要在其子线程中实现(或者用系统提供的IntentServ转载 2015-04-23 19:10:27 · 1675 阅读 · 1 评论 -
android TextView中文字通过SpannableString设置属性
在Android中,TextView是我们最常用的用来显示文本的控件。 一般情况下,TextView中的文本都是一个样式。那么如何对于TextView中各个部分的文本来设置字体,大小,颜色,样式,以及超级链接等属性呢?下面我们通过SpannableString的具体实例操作来演示一下。[java] view plaincopy转载 2014-07-22 19:19:40 · 861 阅读 · 0 评论 -
Thread Looper Handler
ndroid的消息处理有三个核心类:Looper,Handler和Message。其实还有一个Message Queue(消息队列),但是MQ被封装到Looper里面了,我们不会直接与MQ打交道,因此我没将其作为核心类。下面一一介绍:线程的魔法师 LooperLooper的字面意思是“循环者”,它被设计用来使一个普通线程变成Looper线程。所谓Looper线程就是循环工作的线程。转载 2014-01-26 17:43:10 · 777 阅读 · 0 评论 -
android 拍照上传照片
废话不多说,直接进入主题,想要在android中实现拍照最简单饿方法就是New 一个 Intent 设置Action为android.media.action.IMAGE_CAPTURE 然后使用startActivityForResult(intent,REQUEST_CODE)方法进入相机。当然还有很多方式可以实现,大家可以在网上查找。但是要注意的是在进入相机前最好判断下sdcard是否可用,转载 2014-05-23 15:35:09 · 745 阅读 · 0 评论 -
Android 使用 Junit进行单元测试
JUnit单元测试简介:在我们开发android app的时候,需要不断地进行测试,所以使用JUnit测试框架显得各位重要是企业级开发的常用手段,学会JUnit可以加快应用的开发周期,可以理解为一种测试的工具吧 废话不多说,下面就介绍一下如何使用JUnit进行单元测试建立JUnit测试的两种方法一.直接在需要被测试的工程中新建测试类转载 2014-03-24 11:02:04 · 1069 阅读 · 0 评论 -
Android Fragment 关于碎片的一切
我们都知道,Android上的界面展示都是通过Activity实现的,Activity实在是太常用了,我相信大家都已经非常熟悉了,这里就不再赘述。但是Activity也有它的局限性,同样的界面在手机上显示可能很好看,在平板上就未必了,因为平板的屏幕非常大,手机的界面放在平板上可能会有过分被拉长、控件间距过大等情况。这个时候更好的体验效果是在Activity中嵌入"小Activity",然后转载 2014-03-07 15:46:14 · 639 阅读 · 0 评论 -
Android 程序插件框架基于DexClassLoader
插件相关介绍 首先插件只是一个逻辑概念,而不是什么技术标准,主要包含如下几个意思:插件不能独立运行,必须运行一个宿主程序中,宿主程序去调用插件(ps:微信的游戏算不算插件?感觉算是一种)插件一般情况下可以独立安装,android中就可以设计一个apk宿主程序中可以管理插件,比如添加,删除,禁用等。宿主程序应该保证插件向下兼容,新的宿主程序应该兼容老的插件转载 2014-03-13 20:56:39 · 2697 阅读 · 2 评论 -
Android中的类装载器DexClassLoader
类装载器DexClassLoader的介绍 在java中,有个概念叫做“类加载器”(ClassLoader),它的作用就是动态的装载Class文件。标准的java sdk中有一个ClassLoader类,借助这个类可以装载想要的Class文件,每个ClassLoader对象在初始化时必须制定Class文件的路径。 可能有人会问,在写程序的时候不是有imp转载 2014-03-13 19:14:11 · 905 阅读 · 0 评论 -
Android ViewFlipper的使用
屏幕切换指的是在同一个Activity内屏幕见的切换,最长见的情况就是在一个FrameLayout内有多个页面,比如一个系统设置页面;一个个性化设置页面。通过查看OPhone API文档可以发现,有个android.widget.ViewAnimator类继承至FrameLayout,ViewAnimator类的作用是为FrameLayout里面的View切换提供动画效果。该类有如下几转载 2013-09-04 15:18:25 · 691 阅读 · 0 评论 -
Android中广播的使用
从现实生活中理解广播机制一听到广播我们第一感觉就会联想到小时候村里面的广播,每逢村里有什么活动都是通过广播发送的。收听收音机也是一种广播,在收音机中有很多个广播电台,每个广播电台播放的内容都不相同。接受广播时广播(发送方)并不在意我们(接收方)接收到广播时如何处理。好比我们收听交通电台的广播,电台中告诉我们现在在交通状况如何,但它并不关心我们接收到广播时做如何做出处理,这不是广播应该关心的转载 2013-09-03 17:07:11 · 920 阅读 · 0 评论 -
Android Timer使用
写惯java的人可能会认为Timer的使用应该如下:程序功能很简单:10秒后,SetTitle为“hear me?”,然后,实际上这样做是不行的,这跟Android的线程安全有关!Java代码 package com.ray.test; import java.util.Timer; import java.util.TimerTask;原创 2013-08-27 18:31:28 · 866 阅读 · 0 评论 -
Android中padding与margin的区别
之前一直没有搞懂android:padding和android:layout_margin的区别,其实概念很简单,padding是站在父view的角度描述问题,它规定它里面的内容必须与这个父view边界的距离。margin则是站在自己的角度描述问题,规定自己和其他(上下左右)的view之间的距离,如果同一级只有一个view,那么它的效果基本上就和padding一样了。例如我的XML layou转载 2013-01-18 00:53:12 · 585 阅读 · 0 评论 -
adb 查看数据库
以防忘记——让它留点痕迹1、运行输入 adb shell (前提是模拟器正在运行) 权限不够的话加: adb root2、进入命令界面后 输入 ls 指令 会列出文件的目录 3、cd 进入你想要的目录里 (在Eclipse中的File Explorer中的data/data可以找到对应的数据库文件.如:cd com.android.providers.contacts)转载 2013-01-16 11:31:33 · 3662 阅读 · 0 评论 -
Android之Content Provider学习
工作中遇到了contentprovider数据共享机制,下面来总结一下:一、ContentProvider简介 当应用继承ContentProvider类,并重写该类用于提供数据和存储数据的方法,就可以向其他应用共享其数据。虽然使用其他方法也可以对外共享数据,但数据访问方式会因数据存储的方式而不同,如:采用文件方式对外共享数据,需要进行文件操作读写数据;采用share原创 2013-01-17 00:46:47 · 1018 阅读 · 0 评论 -
Android中发送邮件
Android中我为什么发不了邮件???我手机里明明有邮件客户端的,可我为什么不能调用它发送邮件???相信这是很多人会问的问题,手机里有Email客户端,可是偏偏在自己的应用里调用不了,抑或是不知道怎么调用,还有的是一直认为自己写对了,可是偏偏不能调用,无奈之下只能却网上找段代码粘贴上,ok,可以了。。可是你知道别人的代码为什么可以?你知道调用Email是怎么工作的吗?如果你又像给多人发邮件,还想转载 2013-01-30 10:46:47 · 702 阅读 · 0 评论 -
Android获取版本号
Android中如何获取应用版本号应用场景:1、在界面中显示应用程序的版本号;2、用户启动该应用,后台判断该应用是否是最新版本。上述情景都需要在程序中自动获取到应用的版本号。思路简介:在Android中,应用程序的版本号是在AndroidManifest.xml文件中进行配置的,而PackageInfo类则封装了从该配置文件中获取的所有信息,描述了包内容的整体信息,转载 2013-01-30 15:36:31 · 958 阅读 · 0 评论 -
oauth认证原理
OAUTH认证授权的流程进行初步认识。其实,简单的来说,OAUTH认证授权就三个步骤,三句话可以概括:1. 获取未授权的Request Token2. 获取用户授权的Request Token3. 用授权的Request Token换取Access Token 当应用拿到Access Token后,就可以有权访问用户授权的资源了。这三个步骤对应OAUTH的转载 2013-01-28 16:25:41 · 540 阅读 · 0 评论 -
Android Socket编程
Socket SocketServer编程可以说是比较底层的编程方式,对于其他的高级协议都是建立在此基础上,而且Socket 编程是跨平台的,可以在异构语音之间进行通信。 Socket 网络连接模型 Socket编程实例: 创建一个java 类作为服务器,android 应用程序作为客转载 2013-01-25 16:40:17 · 569 阅读 · 0 评论 -
Intent的Action实现应用程序之间的切换
要做一个android的播放器独立应用程序,要求外部程序可以调用此播放器进行视频播放。因此涉及到外部程序调用的知识点。经过多次测试,现总结方法如下:1.使用自定义ActionA程序中调用的代码为:1 Intent intent = new Intent();2 intent.setAction("com.test.action.PLAYER");原创 2013-01-25 11:31:39 · 627 阅读 · 0 评论