自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

走向牛b之路!

揾食姐,犯法啊?我想噶?

  • 博客(107)
  • 资源 (2)
  • 收藏
  • 关注

原创 android打混淆包后报错NullPointerException

将代码中的百度地图更新到最新版后,直接运行没有任何问题,但打混淆包后报错“MapView NullPointerException”之类的,混淆规则和百度提供的一模一样,回到家用Mac继续琢磨下,结果发现Mac打混淆包没有报错,mac打包与windows打包几乎是一样的流程,所以我估计是百度地图更新到最新版但仍留有旧文件在缓存,导致打包时有问题!为了测试,避开缓存,找了个新的文件夹,从git上拉最新的代码到这个新的文件夹,然后再打包,得了!...

2020-07-15 13:57:46 564

原创 ”您的应用签名算法采用“SHA256withRSA”,在部分4.2一下安卓版本的手机上不能安装的解决方案

”您的应用签名算法采用“SHA256withRSA”,在部分4.2一下安卓版本的手机上不能安装的解决方案

2016-10-25 16:16:54 9606 2

原创 android的application类中,onCreate()被执行多次的原因及解决方案

当App中有多个进程的时候,android的application类中,onCreate()就会被执行多次,所以,我们就要加多一些判断的处理,避免除了主进程的其它进程浪费系统资源!我们需要在application的onCreate()中:private void initConfig() { String curProcessName = Utils.getProcessN

2016-10-18 14:58:10 4024

原创 Android Fragment简介

Fragment有两种实现方式:framework version: framework's 通过静态库实现Fragment,主要为了运行在Android 3.0以及以上的平台.** support version:** 通过support包里面实现的Fragment.二者主要区别:如果用support里面的fragment,activity必须继承于FragmentA

2016-10-17 13:19:14 464

转载 ios基础语法

转自:http://blog.csdn.net/chuangzaozhe1/article/details/9205267软件开发领域最主要的开发语言,假如我们对面向对象的思维已经C语言都很熟悉的话,对于我们学习Objective-C将会非常有用。假如我们对C语言还不熟悉的话,那我们需要学习一下C语言。 一.方法调用(Calling Methods) 为了能够尽快上手,我们先来看一

2016-04-11 14:42:47 715

转载 [Android]使用Gradle提交自己开源Android库到Maven中心库

来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/4388175.html  此文针对开源爱好者。如果你想让别人使用你的Android开源库,第一种方法是,提供你的Github地址,让别人clone一份,然后让别人import到他的项目中。另一种更简单的方式就是直接让别人在他的Gradle中添加你的库依赖,如下:comp

2016-03-18 11:24:04 641

原创 SourceTree的使用

1、从Git服务器上获取项目2、提交我的修改项目3、发布新版本4、修复bug

2016-01-26 09:53:38 2835 1

转载 Android studio 如何打.aar包,并应用

jar包即使包含了xml资源,在应用的时候也会报资源找不到的错误,为什么?因为在引用这个jar包的工程中,jar包中引用ID 指向的是当前项目的资源,目前也没有针对此的解决方法。aar包的出现,让打包资源简单化成了现实。但是如果你是eclipse工程,没办法引用aar包,那可以到这个博客中看看他是怎么解决的(http://blog.csdn.net/xiaanming/article/detail

2015-11-19 15:44:43 3063

转载 android Spinner控件详解

Spinner提供了从一个数据集合中快速选择一项值的办法。默认情况下Spinner显示的是当前选择的值,点击Spinner会弹出一个包含所有可选值的dropdown菜单,从该菜单中可以为Spinner选择一个新值。上图显示的是Spinner常见的样式。这篇文章中我将讨论1.Spinner的基本用法 2.设置Spinner的Adapter (arrayadapter 和自定义Base

2015-09-21 01:55:30 7883

转载 android 事件处理机制之requestDisallowInterceptTouchEvent

转自:http://blog.csdn.net/chaihuasong/article/details/17499799当手指触摸到屏幕时,系统就会调用相应View的onTouchEvent,并传入一系列的action。当有多个层级的View时,在父层级允许的情况下,这个action会一直向下传递直到遇到最深层的View。所以touch事件最先调用的是最底层View的onTouchEe

2015-09-20 13:29:45 451

原创 Picasso设置圆角

public class CircleTransform implements Transformation {@Overridepublic Bitmap transform(Bitmap source) {int size = Math.min(source.getWidth(), source.getHeight());int x = (source.getWidth() - si

2015-08-31 15:54:32 6849

原创 Android网络状态广播监听

public class NetworkChangeReceiver extends BroadcastReceiver { private final static String TAG = "Monitor_NetworkChangeReceiver"; private final static int STATUS_WIFI = 2; priv

2015-07-29 19:43:31 540

转载 [Parallax Animation]实现知乎 Android 客户端启动页视差滚动效果

欢迎转载,但请务必注明出处!http://ryanhoo.github.io/blog/2014/07/16/step-by-step-implement-parallax-animation-for-splash-screen-of-zhihu/前言Parallax Scrolling (视差滚动),是一种常见的动画效果。视差一词来源于天文学,但在日常生活中也有它的身

2015-04-16 16:59:35 1160

转载 Android 开发环境下载地址 -- 百度网盘 adt-bundle android-studio sdk adt 下载

Android 开发环境介绍 : 目前 Android 有两种开发环境, 一种是传统的 Eclipse + ADT, 一种就是目前最新并且得到 Google 推荐的 Android Studio;-- Eclipse + ADT  开发环境 : 大多数开发者正在使用的, 正在逐渐被淘汰中, 目前我也在用这个环境;-- Android Studio 开发环境 : 该环境推出几年, 与

2015-04-09 14:33:48 1647

转载 MVP模式与MVC模式

源地址:http://www.cnblogs.com/cuihongyu3503319/archive/2009/01/09/1372820.htmlMVP模式与MVC模式(转)MVP 是从经典的模式MVC演变而来,它们的基本思想有相通的地方:Controller/Presenter负责逻辑的处理,Model提供数据,View负责显示。作为一种新的模式,MVP与MVC有着一

2015-04-08 10:37:04 418

转载 Android中Handler引起的内存泄露

在Android常用编程中,Handler在进行异步操作并处理返回结果时经常被使用。通常我们的代码会这样实现。public class SampleActivity extends Activity {    private final Handler mLeakyHandler = new Handler() {     @Override     public void handleMes

2015-02-08 17:23:43 319

翻译 关于Intent Flag的翻译

FLAG_ACTIVITY_BROUGHT_TO_FRONT       这个标志一般不是由程序代码设置的,如在launchMode中设置singleTask模式时系统帮你设定。 FLAG_ACTIVITY_CLEAR_TOP      如果设置,并且这个Activity已经在当前的Task中运行,因此,不再是重新启动一个这个Activity的实例,而是在这个Act

2015-01-01 18:46:48 526

转载 自定义View控件解决android文字排版和换行的问题

先记录下,到时候试试http://blog.csdn.net/gf771115/article/details/6273207

2015-01-01 15:49:59 543

原创 Android save img to sqlite

1、bitmap保存到SQLite 中 数据格式:    Java代码  db.execSQL("Create table express ( _id INTEGER PRIMARY KEY AUTOINCREMENT,express_no varchar(100),express_name TEXT,express_img BLOB );");   

2014-12-18 20:20:51 413

原创 使用TextView在固定的格式中插入数据

public static final String str = "%s 与 %s 去看电影";TextView tv= (TextView) view.findViewById(R.id.xxxx);String txtstr = String.format(str,string1, string2);Spanned spt = Html.fromHtml(txtstr);tv.set

2014-12-18 14:30:47 1018

原创 About error:TimerTask is scheduled already

一个TimerTask 通过schedule方法使用之后,不能通过schedule方法调用第二次,想重复使用是不行的,是一次性用品。当你重新想利用这个timertask时,那么你只能重新获得一个实例,最好是写成类:class MyTask extends TimerTask{ @Override public void run(){ // TODO Auto-gener

2014-12-15 11:45:21 515

转载 美团Android自动化之旅—适配渠道包

概述前一篇文章(美团Android自动化之旅—生成渠道包)介绍了Android中几种生成渠道包的方式,基本解决了打包慢的问题。但是,随着渠道越来越多,不同渠道对应用的要求也不尽相同。例如,有的渠道要求美团客户端的应用名为美团,有的渠道要求应用名为美团团购。又比如,有些渠道要求应用不能使用第三方统计工具(如flurry)。总之,每次打包都需要对这些渠道进行适配。之前的做法是为

2014-12-10 15:33:03 450

转载 美团Android自动化之旅—生成渠道包

概述每当发新版本时,美团团购Android客户端会被分发到各个应用市场,比如豌豆荚,360手机助手等。为了统计这些市场的效果(活跃数,下单数等),需要有一种方法来唯一标识它们。团购客户端目前通过渠道号(channel)来区分不同的市场,代码中使用Config.channel变量记录该渠道号。比如,豌豆荚市场中美团应用的渠道号是wandoujia,360手机助手中美团应用的渠道号为q

2014-12-10 15:32:10 358

原创 关于TreeSet,ArrayList,Vector 删除某条记录后的探索

public class CollectionTest { public static void main(String[] args) { TreeSet set = new TreeSet(); ArrayList list = new ArrayList(); Vector vector = new Vector(); for (int i = 0; i < 10; i++)

2014-12-09 16:00:42 342

原创 Android 多线程断点下载技术分享

本项目目标:实现一个基于Android客户端多线程断点续传下载功能的软件项目所涉及的技术点如下:1、多线程下载的原理分析2、网络编程初步3、文件IO高级编程技术4、多线程断点续传原理分析及设计5、多线程断点续传Java版本的实现及优化6、Android版本的多线程断点续传的实现与优化7、Android的多线程通信机制的原理及实现

2014-11-29 17:41:30 479

原创 android Picasso----图片加载和缓存

Picasso – Android系统的图片下载和缓存类库Picasso 是Square开源的一个用于Android系统下载和缓存图片的项目。该项目和其他一些下载图片项目的主要区别之一是:使用4.0+系统上的HTTP缓存来代替磁盘缓存。Picasso 的使用是非常简单的,例如:帮助1Picasso.with(context).load("http://i.imgur

2014-11-25 15:22:28 733

转载 Android平台调用WebService详解(基于SOAP协议)

上篇文章已经对Web Service及其相关知识进行了介绍(Android开发之WebService介绍 ),相信有的朋友已经忍耐不住想试试在Android应用中调用Web Service。本文将通过一个简单的示例讲解和演示Android平台的Web Service开发。Ksoap2-android简介      在Android平台调用Web Service需要依赖于第三方类库kso

2014-11-17 16:53:40 692

转载 Android开源框架Volley

1.Volley概述在项目开发过程中,博主曾写过大量的访问网络重复代码,特别是ListView adapter很难避免getView()方法不被重复调用,如果ImageView不利用缓存机制,那么网络的负荷就会更大!曾将访问网络代码和缓存封装起来使用,但是中间仍存在不少瑕疵!今年的Google I/O 2013上,Volley发布了!Volley是Android平台上的网络通信库,能使网络

2014-10-27 14:30:11 609

原创 PopupWindow杂谈

popupWindow.showAtLocation(findViewById(R.id.btnBack), Gravity.CENTER, 0, 0);//设置居中

2014-10-27 12:03:44 469

原创 android.view.ViewTreeObserver.addOnGlobalLayoutListener

有时候需要在onCreate方法中知道某个View组件的宽度和高度等信息,而直接调用View组件的getWidth()、getHeight()、getMeasuredWidth()、getMeasuredHeight()、getTop()、getLeft()等方法是无法获取到真实值的,只会得到0。这是因为View组件布局要在onResume回调后完成。下面提供实现方法,onGlobalLayout

2014-10-27 10:15:02 1036

原创 Android fragment获取ontouchevent回调

该方法分为两步,首先是在父类Activity中,构造一个回调接口,并向外提供注册和销毁该回调接口的方法。然后在Activity的dispatchTouchEvent函数中遍历所有注册了该回调接口的对象,分发onTouchEvent事件。/** * 回调接口 * @author WongHoman * */public interface MyTouchListener

2014-10-22 20:04:38 941

转载 Android输入法界面管理(打开/关闭/状态获取)

最近做一个带发表情的聊天界面,需要管理系统输入法的状态, 一、打开输入法窗口:[java] view plaincopyInputMethodManager inputMethodManager = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);  /

2014-10-15 00:25:19 610

原创 Android 探究-----继承ViewGroup后我们可以做什么?

继承ViewGroup后,子类通过代码去addView时,如果不设置

2014-10-12 21:35:16 704

转载 激励我到大学毕业

看看清华的同学在四年的大学中干什么吧,非常值得我们去学习。『天行键,君子以自强不息;地势坤,君子以厚德载物。一)永远不要说你已经尽力了我在高中时体育特别差,跑1000米都很要命,从来都是不及格。到了清华之后,第一节体育课,老师告诉我们每年要测3000米长跑,跑不过不许毕业,取消推研资格。怎么办?于是每天晚上10:30,我们的自习教室关门,操场上的人就多起来了。跑半个小时再回寝室继续

2014-10-04 03:53:02 553

转载 一个程序员的十年程序人生感悟

展望未来,总结过去10年的程序员生涯,给程序员小弟弟小妹妹们的一些总结性忠告走过的路,回忆起来是那么曲折,把自己的一些心得体会分享给程序员兄弟姐妹们,虽然时代在变化,但是很可能你也会走我已经做过的10年的路程,有些心得体会你可以借鉴一下,觉得说得有道理的你就接纳,觉得说得没道理的,你就抛弃,以下是我发自内心的,给大家的忠告,特别是针对那些小弟弟妹妹们。01. 自己的户口档案、养老保险、

2014-10-04 03:31:00 975

转载 Android和JavaScript互相调用

Html页面和Java代码结合的方式一般用在界面经常被更改 的情况下,可以讲html放在网络中,软件一打开就会访问网络获取到最新的界面。缺点是会受到网络信号的影响,从而导致访问速度慢。1.用WebView来显示HTML代码2.允许WebView执行JavaScript    webView.getSettings().setJavaScriptEnabled(true);

2014-10-04 01:11:26 393

转载 Android 获取assets的绝对路径

第一种方法:       String path = "file:///android_asset/文件名";第二种方法:    InputStream abpath = getClass().getResourceAsStream("/assets/文件名");若要想要转换成String类型String path = new String(InputStrea

2014-10-04 00:57:00 2953 1

转载 android setTag (int key, Object tag)抛出IllegalArgumentException的问题

setTag是android的view类中很有用的一个方法,可以用它来给空间附加一些信息,在很多场合下都得到妙用。setTag(Object tag)方法比较简单,这里主要谈一谈带两个参数的setTag方法。官方的api文档中提到:“ The specified key should be an id declared in the resources of the applica

2014-10-04 00:13:29 390

转载 android屏幕适配

如何将一个应用程序适配在不同的手机上,虽然这不算是一个技术问题,但是对于刚刚做屏幕的开发人员来说,还真不是一件多么简单的事情。 首先:你需要在AndroidManifest.xml文件的元素如下添加子元素supports-screens android:largeScreens="true"       android:normalScreens="true" an

2014-10-04 00:06:14 306

原创 装饰设计模式

装饰设计模式就是对已有的对象的功能进行增强简单小例子:[java] view plaincopyclass Person  {      void chifan()      {          System.out.println("chifan");      }  }    /* 为了不随便

2014-10-03 22:51:52 459

仿微信ListView带快速搜索与键入搜索

仿微信ListView带快速搜索与键入搜索

2015-07-29

ViewPager——取消预加载的v4包

修改v4包源码,取消viewpager的必须预加载,可以用代码控制预加载的数量!

2015-01-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除