![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android
文章平均质量分 80
炫_愛羊
这个作者很懒,什么都没留下…
展开
-
android--TextView实现跑马灯
package sweet.venst.act;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.In原创 2013-07-23 15:46:00 · 746 阅读 · 0 评论 -
Android之BroadcastReceiver
BroadcastReceiver简介BroadcastReceiver理解为广播接收者,它用于接收程序所发出的Broadcast的Intent。它在一端监听接收广播消息,然后再做出处理。它的本质上就是属于一个监听器。启动BroadcastRecevicer的方式有两种:sendBroadcast()和sendOrderedBroadcast(),两者的区别就是前者是发送一个普通的广播,后者是转载 2013-05-14 21:19:28 · 97 阅读 · 0 评论 -
Android SystemProperties和Settings.System
Android SystemProperties和Settings.System介绍,不同应用间传递信息1 使用 SystemProperties.get这中方法在framework里面 经常见到。特别属性如果属性名称以“ro.”开头,那么这个属性被视为只读属性。一旦设置,属性值不能改变。如果属性名称以“persist.”开头,当设置这个属性时,其值也将写入/data/prop原创 2013-07-19 14:56:02 · 1134 阅读 · 0 评论 -
Android学习之控件不同状态文字显示不同颜色
方式一:第一要选择的控件 android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/close_time_display" android:layout_marginRight="20dp" andr原创 2013-07-18 13:57:16 · 5692 阅读 · 0 评论 -
Android 系统重启与关机
最近在做个东西,巧合碰到了sharedUserId 的问题,所以收集了一些资料,存存档备份。安装在设备中的每一个apk文件,Android 给每个 APK 进程分配一个单独的用户空间,其 manifest 中的 userid 就是对应一个 Linux 用户都会被分配到一个属于自己的统一的 Linux 用户 ID,并且为它创建一个沙箱,以防止影响其他应用程序(或者其他应用程序影响它)。用户原创 2013-07-18 00:05:29 · 3040 阅读 · 0 评论 -
Android亮屏和熄屏控制
我们的Android应用程序很多需要和亮屏和熄屏打交道,比如闹钟的时候,需要保持亮屏,之后又需要熄屏。那么今天,我们来分析下这方面的功能。二. 系统服务 --- PowerManager.java顾名思义,PowerManager.java就是管理我们电源方面的功能的,当然也包括我们屏幕的亮和熄灭。没错,我们的应用程序就是通过这个系统服务来实现亮屏和熄屏的功能的。1. 应用程序原创 2013-07-17 22:44:10 · 13532 阅读 · 1 评论 -
Android AsyncTask与handler
本文主要讲解下AsyncTask的使用以及Handler的应用首先,我们得明确下一个概念,什么是UI线程。顾名思义,ui线程就是管理着用户界面的那个线程!android的ui线程操作并不是安全的,并且和用户直接进行界面交互的操作都必须在ui线程中进行才可以。这种模式叫做单线程模式。我们在单线程模式下编程一定要注意:不要阻塞ui线程、确保只在ui线程中访问ui组件当我原创 2013-07-16 00:15:55 · 691 阅读 · 0 评论 -
android LinearLayout和RelativeLayout实现精确布局
先明确几个概念的区别: padding margin:都是边距的含义,关键问题得明白是什么相对什么的边距padding:是控件的内容相对控件的边缘的边距. margin :是控件边缘相对父空间的边距android:gravity是对该view 内容的限定.比如一个button 上面的text. 你可以设置该text 在view的靠左,靠右等位置.该属性就干转载 2013-07-16 00:14:20 · 771 阅读 · 0 评论 -
Android APK反编译详解(附图)
本文Android反编译教程,测试环境:Win7 Ultimate x64Ubuntu 12.04 x86_x64反编译工具包 下载 (2012-10-10更新)一、Apk反编译得到Java源代码下载上述反编译工具包,打开apk2java目录下的dex2jar-0.0.9.9文件夹,内含apk反编译成java源码工具,以及源码查看工具。apk反编译工具dex2jar转载 2013-07-15 23:38:15 · 516 阅读 · 0 评论 -
android---多Activity一次性退出
因为android的API中没有提供一次性退出的接口所以想要在多activity的程序里面一次性退出的话就要费点功夫了。我是在一个单例对象里面记录activity栈中activity的引用然后在需要退出时遍历一遍finish()掉就可以了。实现步骤如下:1、创建一个单例对象?代码片段,双击复制01020304050607080原创 2013-07-12 00:06:32 · 675 阅读 · 0 评论 -
Android---GestureDetector手势识别类
为了加强鼠标响应事件,Android提供了GestureDetector手势识别类。通过GestureDetector.OnGestureListener来获取当前被触发的操作手势(Single Tap Up、Show Press、Long Press、Scroll、Down、Fling),具体包括以下几种:boolean onDoubleTap(MotionEvent e) 解释:双击转载 2013-06-23 18:06:01 · 649 阅读 · 0 评论 -
ubuntu13.04下载android4.0.1源码过程
最初我参考的是老罗的博客http://blog.csdn.net/luoshengyang/article/details/6559955进行下载安装的,但弄着弄着就发现不太对劲了。这里记录下详细过程:1,我的前提是已经搭建好了Android开发环境,也即jdk已经安装好了,输入java -version来检查是否成功。搭建android开发环境可以看链接1和 链接2.2,原创 2013-07-07 13:30:46 · 3582 阅读 · 0 评论 -
ADB使用方法及常用命令
ADB是android sdk里的一个工具, 它的主要功能有: 运行设备的shell(命令行) 管理模拟器或设备的端口映射 计算机和设备之间上传/下载文件 将本地apk软件安装至模拟器或android设备ADB是一个 客户端-服务器端 程序, 其中客户端是你用来操作的电脑, 服务器端是android设备.先说安装方法, 电脑上需要安装客户端.原创 2013-07-30 19:35:11 · 809 阅读 · 0 评论 -
Android4.0硬件加速及绘制技巧
从Android 3.0开始,Android 2D的绘制流程就设计为能够更好地支持硬件加速。使用GPU的View在Canvas上进行画的操作时都会使用硬件加速。在最新的Android版本里,图形硬件加速及绘制技巧得到了更好的提升. Android 4.0 1.Android 4.0硬件加速的使用 1.1 硬件加速的控制级别 启用硬件加速的最简单方法就是为整个系统打原创 2013-07-31 11:33:10 · 773 阅读 · 0 评论 -
生成release版本的Android系统
网上Android数字签名大多是与Android APK相关,而介绍Android系统签名的方法却不多。正巧前段时间帮别人做CTS 认证,需要用到给Android系统签名。为什么需要给Android系统签个名才能进行CTS认证呢?原来我们通过make -j4编译出来的system.img使用的是test key,这种类型的key只适用于开发阶段,而且这种秘钥是公开的,谁都可以使用。当发布一款a转载 2013-08-01 15:51:03 · 655 阅读 · 0 评论 -
Android4.4添加busybox 支持——基于Android Bionic库
Android 的toolbox没有自动补齐,命令少,对于开发人员还是需要busybox,直接移植官方的busybox会有很多问题,这里简单阐述cyanogenmod提供的针对android bionic 库的android源码的移植及添加方法,方便大家开发使用。Android并没有采用glibc作为C库,而是采用了Google自己开发的Bionic Libc,它的官方Toolchain也原创 2015-01-04 11:11:57 · 4711 阅读 · 1 评论 -
Android模拟器下添加busybox(图文)
1 什么是busybox? BusyBox 是一个集成了一百多个最常用linux命令和工具的软件。BusyBox 包含了一些简单的工具,例如ls、 cat 和 echo等等,还包含了一些更大、更复杂的工具,例如 grep、find、mount 以及 telnet。有些人将 BusyBox 称为 Linux 工具里的瑞士军刀。简单的说BusyBox就好像是个大工具箱,它集成压缩了 L转载 2015-01-04 09:12:41 · 967 阅读 · 0 评论 -
Android系统的开机画面显示过程分析
第一个开机画面是在内核启动的过程中出现的,它是一个静态的画面。第二个开机画面是在init进程启动的过程中出现的,它也是一个静态的画面。第三个开机画面是在系统服务启动的过程中出现的,它是一个动态的画面。无论是哪一个画面,它们都是在一个称为帧缓冲区(frame buffer,简称fb)的硬件设备上进行渲染的。接下来,我们就分别分析这三个画面是如何在fb上显示的。 1. 第一个开机画面转载 2015-01-01 23:13:03 · 1902 阅读 · 0 评论 -
Android View刷新机制
一:总体说明在Android的布局体系中,父View负责刷新、布局显示子View;而当子View需要刷新时,则是通知父View来完成。二:代码分析1).ViewGroup的addView方法,理解参数的意义和传递invalidate调用父类View的方法addViewInner方法主要做的事情是view的dispatchAttachedToWindow(Atta原创 2015-01-06 15:45:28 · 15962 阅读 · 1 评论 -
Android su开放root权限
一.源码1)su.c/***** Copyright 2008, The Android Open Source Project**** Licensed under the Apache License, Version 2.0 (the "License"); ** you may not use this file except in compliance wit原创 2015-01-07 12:57:06 · 13423 阅读 · 4 评论 -
Android系统计划
1.准备知识2.硬件抽象层3原创 2014-05-21 12:20:25 · 583 阅读 · 0 评论 -
Android 4.0 framework源码修改编译,模拟器运行不起来
我是用的android 4.0.3 ICS的源码,编译好后,利用编译好的镜像启动的模拟器,以前修改过里面的Launcher,将生成的Launcher.apk和Launcher.odex push后是成功的。现在我在frameworks/base/policy/src/com/android/internal/policy/impl/LockScreen.javaframeworks/ba转载 2014-05-19 10:14:28 · 2306 阅读 · 2 评论 -
android应用如何启动另外一个apk应用
在开发的过程中,经常会遇到在一个应用中启动另外一个apk应用的情况 问题的核心点在于我们要拿到第三方apk的package名称跟class名称, 如:package名称是com.funcity.taxi.passenger,class名称是com.funcity.taxi.passenger.activity.LoadActivity。 从一个apk启动到另外一个apk,当原创 2013-09-23 23:44:31 · 8129 阅读 · 0 评论 -
Android v22.0.1+ 关联 libs/*.jar 源码包的方法
在libs下新建一个与jar同名的properties文件:eg test.jar,然后建立一个test.jar.properties 文件我的做法是在android的项目下面建立一个source的文件夹,将libs下jar依赖的source放到source文件夹下面在test.jar.properties文件里面输入src:../source/test-sources.原创 2013-09-17 15:26:00 · 1405 阅读 · 0 评论 -
android--ndk交叉编译工具安装
./make-standalone-toolchain.sh --ndk-dir=../../ --install-dir=/home/zhanglong/tools --platform=android-9 --toolchain=arm-linux-androideabi-4.4.3 --ndk-dir指的是ndk的安装目录--install-dir 工具安装原创 2013-08-26 16:35:53 · 895 阅读 · 0 评论 -
ANDROID框架揭秘
1、架构图直观 2、架构详解2.1、Linux Kernel 2.2、Android Runtime和Libraries 2.3、Application Framework 2.4、Applications 3、总结 1、架构图直观下面这张图展示了Android系统的主要组成部分:图1、Android系统架构(来源于:android sdk)可以很明显看出,Andr原创 2013-08-04 13:53:07 · 972 阅读 · 0 评论 -
android 动作栏(Action Bar)
摘要 Action Bar是活动中的一种控件,用以代替传统的屏幕顶端的标题栏。默认,Action Bar包括了左侧的应用程序图标(logo),其右是活动的标题,以及Option Menu中的可选项目。Action Bar提供了多种便利特性,包括: 直接在Action Bar中显示Option Menu中的项目,Action Bar是活动中的一种控件,用以代替传统的屏幕顶端的标题栏。默认,A原创 2013-08-03 13:38:34 · 7452 阅读 · 0 评论 -
Android应用程序的默认最大内存值
Android应用程序的默认最大内存值为16M,不同的手机版本和型号有所不同(我的三星galaxy s3的是256M)有些应用程序可能会出现内存溢出,譬如:ERROR/AndroidRuntime(264): java.lang.OutOfMemoryError: bitmap size exceeds VM budget除了要检查修正代码之外,还可以考虑修改And原创 2013-06-15 11:28:02 · 752 阅读 · 0 评论 -
Android_WebView用法
如果想WebView能够访问网络,必须在AndroidManifest.xml里面添加权限[html] view plaincopyuses-permission android:name="android.permission.INTERNET" /> main.xml很简单,就是一个WebView转载 2013-06-04 00:53:59 · 1068 阅读 · 0 评论 -
Android--ScrollView只能添加一个子控件问题
有下面一段代码[html] view plaincopyxml version="1.0" encoding="utf-8"?> LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fil转载 2013-06-04 01:05:23 · 1492 阅读 · 0 评论 -
单线程模型中Message、Handler、Message Queue、Looper之间的关系
单线程模型中Message、Handler、Message Queue、Looper之间的关系。答:简单的说,Handler获取当前线程中的looper对象,looper用来从存放Message的MessageQueue中取出Message,再有Handler进行Message的分发和处理.Message Queue(消息队列):用来存放通过Handler发布的消息,通常附属于某一个创建它原创 2013-01-09 22:21:27 · 7354 阅读 · 0 评论 -
应用程序自动更新源码
应用程序自动更新源码代码介绍: 我们看到很多Android应用都具有自动更新功能,用户一键就可以完成软件的升级更新。得益于Android系统的软件包管理和安装机制,这一功能实现起来相当简单,下面我们就来实践一下。首先给出界面效果:1. 准备知识 在AndroidManifest.xml里定义了每个Android apk的版本标识:<manifest xm转载 2012-12-18 18:28:15 · 1567 阅读 · 0 评论 -
android NDK 交叉编译
android中间件开发,本来利用NDK就直接生成了一个SO文件,然后直接打包到APK里,即可运行,但是由于一般真机是不带有root权限的,即使SSH可以解决root权限,当到了java层,root权限又失效了。经常碰到operation not permitted 或 permission delied 之类的错误,但目前还有一个可以运行在真机上的C编译器,因为手机的资源毕竟是很有限的,可喜的是原创 2012-12-13 23:02:41 · 559 阅读 · 0 评论 -
ADT20与SDK兼容问题
ADT20与SDK兼容问题===============================问题一:更新ADT20后,创建工程时无法点击Finish。问题二:刚才更新SDK, ADT,可是新建项目的时候却出现问题了,操作一路默认,出现了下面的提示:This template depends on the Android Support library, whi原创 2012-11-14 22:30:13 · 643 阅读 · 0 评论 -
Android LayoutInflater的使用
Android LayoutInflater的使用在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById()。不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例化;而findViewById()是找xml布局文件下的具体widget控件(如 Button、TextView等)。具体作用:原创 2012-11-13 18:55:42 · 578 阅读 · 0 评论 -
Android通过JNI调用驱动程序
要达到的目的:android系统中,用JAVA写界面程序,调用jni中间库提供的接口,去操作某个驱动节点,实现read,writer ioctl等操作!这对底层驱动开发人员是很重要的一个调试通道,也是android 系统下提供一些特殊功能接口的方法!本文前提:我们假设已经写了一个驱动程序,它是控制LED的亮灭的,并且创建了一个节点:/dev/vib,也就是通过open这个vib节点,可以r原创 2012-07-18 16:08:10 · 984 阅读 · 0 评论 -
Android NDK开发技巧一
平时我们开发Android应用时可能部分要求由于性能问题需要使用NDK来实现,比如OpenGL、OpenCore这样的多媒体应用,使用本地 C/C++语言可以处理一些性能敏感或复杂的算法,Android123就我们日常NDK开发中遇到的问题以及技巧逐一总结方便网友查阅。 1. Android NDK编译的应用可以运行在Android 1.5或更高的操作系统上,在Android平台中本地原创 2012-07-18 15:55:48 · 429 阅读 · 0 评论 -
Android JNI实例代码(二)
我们继续Android JNI开发中的常用代码,第二部分将包含如何在JNI中构造实例化一个Java类以及异常处理的具体方法,有关前一部分的内容可以查看Android JNI实例代码(一) 。 三、在JNI中构造和实例化Java类[java] view plaincopypublic class AndroidJniDemo4{ p转载 2012-07-18 15:48:00 · 674 阅读 · 0 评论 -
Android JNI实例代码(一)
前几天有关Android JNI开发系列教程中有关的源代码,可以在本文中查找:一、 在JNI中执行Java方法[java] view plaincopyclass AndroidJniDemo { private native void executeMethod(); private void show() { S转载 2012-07-18 15:41:27 · 521 阅读 · 0 评论 -
Android JNI开发高级篇
有关Android JNI开发中比较强大和有用的功能就是从JNI层创建、构造Java的类或执行Java层的方法获取属性等操作。 一、类的相关操作 1. jclass FindClass(JNIEnv *env, const char *name); 查找类 该函数可能做过Java开发的不会陌生,这个是JNI层的实现,需要注意的是第二个参数为const char*类型转载 2012-07-18 15:38:31 · 710 阅读 · 0 评论