<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Programming]]></title><description><![CDATA[行到水穷处，坐看云起时]]></description><link>https://blog.youkuaiyun.com/Programming2012</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Programming2012]]></copyright><item><title><![CDATA[Android 9.0源码解读系列（一）Activity启动流程]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/105511426</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/105511426</guid><author>Programming2012</author><pubDate>Tue, 14 Apr 2020 16:12:55 +0800</pubDate><description><![CDATA[从今天开始，我将带领大家一起来解读Android 9.0的源码。在最近这几年，笔者的工作都是和frameworks的修改相关，对于这一块比较熟悉。因此，我力求能用最通俗易懂的语言，让刚开始接触源码的同学也能有所收获。废话不多说，我们直接进入正题。

在入门Android开发时，我们就知道如何去启动一个新的Activity了。我们以显示Intent为例，一般代码如下：


    Intent in...]]></description><category></category></item><item><title><![CDATA[ListView中如何使用Button，让onClick和onItemClick事件共存]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/50898107</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/50898107</guid><author>Programming2012</author><pubDate>Tue, 15 Mar 2016 17:11:53 +0800</pubDate><description><![CDATA[ListView中如何使用Button，让onClick和onItemClick事件共存

假如ListView的一条记录包含一个TextView文本框，一个Button按钮，怎样能让点击按钮有事件响应，同时点击这条记录也有事件响应?

解决方法如下：

将具有点击事件控件的android:focusable属性置成false就可以了，（如这里就是按钮的控件，只要把按钮的控件的andr]]></description><category></category></item><item><title><![CDATA[Short s1=1; s1=s1+1;会报错吗，编译错误还是运行时错误]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/50427794</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/50427794</guid><author>Programming2012</author><pubDate>Tue, 29 Dec 2015 16:58:57 +0800</pubDate><description><![CDATA[如题，答案是会报错，编译错误。
原因：S1+1在计算时，会默认“提升”成int型（Java中默认的计算数据是int型，如果一个long型的20和int型的10计算，则计算中默认提升为long型），所以讲int型的结果赋值给s1，未然报错。]]></description><category></category></item><item><title><![CDATA[Android高效获取指定类型文件，获取文件不求人！]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/50060099</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/50060099</guid><author>Programming2012</author><pubDate>Thu, 26 Nov 2015 19:54:51 +0800</pubDate><description><![CDATA[1、前言：
最近因为项目需要，需要对手机的文件进行分类浏览，获取手机中各种指定类型的文件。想到一年之前曾经用递归的方法列出手机的所有MP3文件（参考这里），这个思路是很不错，但是这个方法对于层次不深的文件系统效果还勉强过得去，如果手机文件数量巨大，上层文件夹层次较深的文件系统而言，效率就特别低！有些甚至半分钟都扫描不完整个手机的文件。鉴于此，从开源的文件浏览器项目中得到启示，并和大家分享
2、]]></description><category></category></item><item><title><![CDATA[Android从SD卡加载大量图片]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/49908447</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/49908447</guid><author>Programming2012</author><pubDate>Wed, 18 Nov 2015 16:00:42 +0800</pubDate><description><![CDATA[package com.exam.gallery;

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.]]></description><category></category></item><item><title><![CDATA[Java反射学习笔记]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/49683483</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/49683483</guid><author>Programming2012</author><pubDate>Fri, 06 Nov 2015 15:35:02 +0800</pubDate><description><![CDATA[前言：
先说说反射的作用。我们都知道处于安全、维护方便等因素的考虑，java中定义了4中访问权限，分别是：private（仅限本类）、默认无关键字（本包内所有类，包含本包内的子类）、protected（本包、其他包的子类）、public（所有类）。然后因为某些特殊的需要，需要访问某些原本不可见的方法（或者字段），比如访问某个Person类内部的某个private方法，则一般的方法是不行的，这个时]]></description><category></category></item><item><title><![CDATA[Android对于不同分辨率的支持]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/49586599</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/49586599</guid><author>Programming2012</author><pubDate>Mon, 02 Nov 2015 15:07:11 +0800</pubDate><description><![CDATA[从android sdk提供的帮助文档中，我们可以看到各种手机的分辨率和对应的屏大小：QVGA (240x320)，WQVGA400(240x400)，WQVGA432 (240x432)，HVGA (320x480)，WVGA800 (480x800)，WVGA854 (480x854)。
然而，由于分辨率的不同，可能会导致同一布局对应不同分辨率的手机显示出不同的效果，如布局错位、图片虚化等，]]></description><category></category></item><item><title><![CDATA[Android string.xml中使用html标签]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/49492853</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/49492853</guid><author>Programming2012</author><pubDate>Thu, 29 Oct 2015 16:12:14 +0800</pubDate><description><![CDATA[一、使用HTML

方法1、使用 CDATA（推荐）

ABC ]]> 

其中可以省略

方法2、转义HTML标签

bold, underline 




二、使用方法

加载数据使用：

String demo1 = Html.fromHtml(getResources().getString(R.string.demo1));

当string文]]></description><category></category></item><item><title><![CDATA[Android VerticalViewPager]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/49003313</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/49003313</guid><author>Programming2012</author><pubDate>Fri, 09 Oct 2015 17:48:19 +0800</pubDate><description><![CDATA[这个与2011版的哪个不同，没有出现2011版滑动时的那个bug
import android.content.Context;
import android.content.res.Resources;
import android.content.res.TypedArray;
import android.database.DataSetObserver;
import android.gr]]></description><category></category></item><item><title><![CDATA[解决ViewPager在ScrollView中失效的问题]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/48161079</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/48161079</guid><author>Programming2012</author><pubDate>Tue, 01 Sep 2015 17:46:51 +0800</pubDate><description><![CDATA[public class VerticalScrollView extends ScrollView {
 
    private GestureDetector mGestureDetector;
 
    public VerticalScrollView(Context context, AttributeSet attrs){
        super(context, attrs)]]></description><category></category></item><item><title><![CDATA[抽象和接口的理解]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/47042399</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/47042399</guid><author>Programming2012</author><pubDate>Fri, 24 Jul 2015 15:54:38 +0800</pubDate><description><![CDATA[abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制，正是由于这两种机制的存在，才赋予了Java强大的面向对象能力。 

abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性，甚至可以相互替换，因此很多开发者在进行抽象类定义时对于 abstract class和interface 选择显得比较随意。]]></description><category></category></item><item><title><![CDATA[Android打开/关闭数据流量]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/46800233</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/46800233</guid><author>Programming2012</author><pubDate>Wed, 08 Jul 2015 10:32:13 +0800</pubDate><description><![CDATA[这个是网上找的，经过自己整理。由于android并未公开这个类，因此如果要打开/关闭数据，需要通过反射
MobileDataSwitcher.java

import java.lang.reflect.Method;
import android.content.Context;
import android.net.ConnectivityManager;

public class M]]></description><category></category></item><item><title><![CDATA[屏蔽系统锁屏的正确方法，亲测有效！]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/46697973</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/46697973</guid><author>Programming2012</author><pubDate>Tue, 30 Jun 2015 17:02:08 +0800</pubDate><description><![CDATA[先给大家看段对码：

mKeyguard = (KeyguardManager) getSystemService(Context.KEYGUARD_SERVICE);

                mKeylock = mKeyguard.newKeyguardLock(&quot;&quot;);

                mKeylock.disableKeyguar]]></description><category></category></item><item><title><![CDATA[Android/Java 汉字转拼音（英文同样适用）]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/46650721</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/46650721</guid><author>Programming2012</author><pubDate>Fri, 26 Jun 2015 15:30:00 +0800</pubDate><description><![CDATA[HanziToPinyin.java
/*
 * Copyright (C) 2011 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]]></description><category></category></item><item><title><![CDATA[android调用系统相机]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/46011523</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/46011523</guid><author>Programming2012</author><pubDate>Tue, 26 May 2015 18:47:39 +0800</pubDate><description><![CDATA[首先先说明一下，鉴于网上搜android调用系统相机，得到的内容一大把都是：调用系统相机然后获得图片（网上一大把这样的东西，抄过来抄过去，有些人根本就不加以验证是否有效，很不提倡这种做法），如果需要这样功能的请自行百度，我待会介绍的是单纯调用系统相机，但不需要获取图片。
就单纯调用系统相机而言，先说说几个问题
1、系统版本
这个问题在这个帖子中说明了
http://www.eoeandro]]></description><category></category></item><item><title><![CDATA[Android获取系统启动器、电话、短信和相机包名]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/46004045</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/46004045</guid><author>Programming2012</author><pubDate>Tue, 26 May 2015 09:48:12 +0800</pubDate><description><![CDATA[private ResolveInfo res;
                private Intent infoIntent;
                //获取启动器包名
                infoIntent = new Intent(Intent.ACTION_MAIN);
                infoIntent.addCategory(In]]></description><category></category></item><item><title><![CDATA[android中ListView不显示图片]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/45895807</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/45895807</guid><author>Programming2012</author><pubDate>Thu, 21 May 2015 19:30:24 +0800</pubDate><description><![CDATA[关于安卓中ListView不显示图片，原因是多种多样的。
如果是通过本地来加载图片，并且是动态手动添加的，那么就必须要考虑加载的时间问题。
因为在BaseAdapter中，getView的方法执行效率是很快的，如果你图片跟不上节奏，那么必然造成图片空白或者透明。


解决方法：用Handler延迟一定的时间再加载图片，给它足够的时间。我个人建议200-500ms。]]></description><category></category></item><item><title><![CDATA[Android 4.0屏蔽状态栏（已解决）]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/45606921</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/45606921</guid><author>Programming2012</author><pubDate>Sat, 09 May 2015 23:58:57 +0800</pubDate><description><![CDATA[众所周知，安卓4.0以后安全性提高很多，很多之前在2.2的方法，在4.0都实效了。
网上关于屏蔽状态栏的方法很多，但是很多都没什么效果，以用反射的方法比较多（因为app层没有直接公开可以操控状态栏的类，所以要通过反射），大致如下
		 try{
	            Object service = getSystemService("statusbar");
	            C]]></description><category></category></item><item><title><![CDATA[android获取电池电量（无延迟）]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/45602147</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/45602147</guid><author>Programming2012</author><pubDate>Sat, 09 May 2015 16:10:18 +0800</pubDate><description><![CDATA[传统的注册BroadcatsReceiver监听Battery_changed有个缺陷，就是只有等到初始化和电量改变时，才能够收到通知，一下方法可以快速获得电量，直接拷贝的。


之前写过一个桌面电池小控件，记得获取电池信息使用BroadcastReceiver实现的，通常是在一个Service里面，动态注册一个BroadcastReceiver，用以监听电池的电量信息。有时候，仅需要一次性]]></description><category></category></item><item><title><![CDATA[Android抽屉效果的实现（不挤压，不覆盖）]]></title><link>https://blog.youkuaiyun.com/Programming2012/article/details/44835997</link><guid>https://blog.youkuaiyun.com/Programming2012/article/details/44835997</guid><author>Programming2012</author><pubDate>Thu, 02 Apr 2015 19:03:01 +0800</pubDate><description><![CDATA[抽屉效果，顾名思义就是可以像抽屉一样拉出来推进去，在Android中一般是通过滑动（从左到右，或者像帘子一样从上往下拉，或者通过某个按钮）来实现抽屉效果。其实Android的抽屉效果很简单(V4.0以上)，使用了一个叫做DrawerLayout的类就可以轻松实现。废话少说，开始干活。
Android官网的教程（需要翻墙）：http://developer.android.com/training]]></description><category></category></item></channel></rss>