自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zdnuist的专栏

android开发工程师,热衷开源,热衷于技术分享

  • 博客(28)
  • 资源 (5)
  • 收藏
  • 关注

原创 android通过AlarmManager固定时间与周期性的发送广播

* Note: The Alarm Manager is intended for cases where you want to have * your application code run at a specific time, even if your application is * not currently running.  For normal timing opera

2015-04-29 17:18:04 1237

原创 android多种方式通过URI调用本地百度地图

默认的经纬度为:double lat = 32.982022;double longt = 119.780574;1.public static Uri getAddressMapUri(double lat, double longt, String result) { DecimalFormat decimalFormat = new DecimalFo

2015-04-21 16:32:50 3837

原创 Base64编码与解码

Base64编码说明:Base64编码要求把3个8位字节(3*8)转化为4个4位的字节(4*6),之后在6位的前面补2个0,形成8位一个字节的形式。如果剩下的字符不足3个字节,则用0填充,输出字符使用‘=’,因此编码后输出的文本末尾可能会出现1或2个'='为了保证所输出的编码位可读字符,Base64制定了一个编码表,以便进行统一转换。编码表的大小为2^6=64,这也是Base64名称的由来

2015-04-13 19:43:03 522

原创 java高效实现随机数的方法

具体的介绍请看:http://javamex.com/tutorials/random_numbers/xorshift.shtml具体的代码如下:private static int randomIntFrom0to(int max) { // XORShift instead of Math.random // http://javamex.com/tutorials/rand

2015-04-13 15:34:47 731

原创 Android中由于没有捕获的异常导致程序意外停止

Thread.setDefaultUncaughtExceptionHandler(new UEHandler(this));---设置当线程由于未捕获到异常而突然终止,并且没有为该线程定义其他处理程序时所调用的默认处理程序UEHandler实现了Thread.UncaughtExceptionHandler接口当某一线程因未捕获的异常而即将终止时,Java 虚拟机将使用 Thread

2015-04-13 13:42:05 531

原创 android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an appli

在service中通过WindowManager创键自定义view的时候出现如下错误:android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application百度了一下也没有找到有效的解决办法,后来发现是自己的代码出现了问题,在设置WindowMa

2015-04-01 19:50:58 622

原创 EventBus的学习与使用

EventBus 是一个 Android 事件发布/订阅框架,通过解耦发布者和订阅者简化 Android 事件传递,这里的事件可以理解为消息,本文中统一称为事件。事件传递既可用于 Android 四大组件间通讯,也可以用户异步线程和主线程间通讯等等。传统的事件传递方式包括:Handler、BroadCastReceiver、Interface 回调,相比之下 EventBus 的优点是代码简洁

2015-03-26 15:21:41 465

原创 The application's PagerAdapter changed the adapter's contents without calling PagerAdapter#notifyDat

具体异常信息如下:03-20 09:47:03.117: W/ANDROID_ZD(1208): Error[java.lang.IllegalStateException: The application's PagerAdapter changed the adapter's contents without calling PagerAdapter#notifyDataSetChange

2015-03-20 10:41:21 649

原创 android如何设置全屏的DialogFragment以及自定义提示框支持横竖屏显示

DialogFragment是Android3.0引入的,也是谷歌官方推荐用来创建对话框的类。DialogFragment相对与Dialog的最大优点是在手机配置变化,导致Activity需要重新创建时,例如旋屏,基于DialogFragment的对话框将会由FragmentManager自动重建,然而基于Dialog实现的对话框则会消失。实现标题内容的代码如下,代码中已经标注了详细的注释

2015-03-18 12:02:21 2109

转载 通过ThreadMXBean类来检查程序中的死锁

转载地址:http://www.importnew.com/15307.html首先申明一下创建这个分类《技术分享》的原因,本人特别喜欢开源的代码,也非常热衷于别人分享喜欢的代码,看到一些精彩的技术贴总是自己手动尝试下,为了让更多的人能够看到这项技术以及防止以后自己遗忘,特别将自己手动实践后的代码,以及自己在写代码过程中的遇到的疑问记录下来,为开源世界尽自己的微博之力。Thread

2015-03-17 20:11:56 1312

原创 android Activity的四种加载模式

Stardard: 标准模式,一调用startActivity()方法就会产生一个新的实例。SingleTop:如果已经有一个实例位于Activity栈的顶部时,就不产生新的实例,而只是调用Activity中的newInstance()方法。如果不位于栈顶,会产生一个新的实例。SingleTask:会在一个新的task中产生这个实例,以后每次调用都会使用这个,不会去产生新的

2015-03-09 11:52:14 371

原创 android获取本地音乐的专辑图片

获取本地的音文件请查看 http://blog.csdn.net/zdnuist/article/details/42393947获取专辑图片主要是通过album_id进行查询,因此首先获取album_idString album_id = cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.ALBUM_ID));

2015-01-30 16:37:12 7942 1

原创 JAVA实现DES加密

数据加密算法(Data Encryption Algorithm,DEA)是一种对称加密算法,很可能是使用最广泛的密钥系统,特别是在保护金融数据的安全中,最初开发的DEA是嵌入硬件中的。DES 使用一个 56 位的密钥以及附加的 8 位奇偶校验位(每组的第8位作为奇偶校验位),产生最大 64 位的分组大小。这是一个迭代的分组密码,使用称为 Feistel 的技术,其中将加密的文本块

2015-01-30 15:11:24 412

原创 android自定义ProgressDialog

本文主要介绍自动环形的ProgressDialog,主要用于网络请求之前的缓冲页面。首先对ProgressDialog进行分解,它分为一个ProgressBar和一个TextView,因此我们最主要的就是自定义ProgressBar自定义ProgressDialog的主要布局文件buffer_dialog.xml,主要的作用是让dialog在屏幕的中间位置显示<RelativeLayo

2015-01-24 20:38:56 739

原创 Android关闭软键盘

imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); if(imm.isActive()){ imm.hideSoftInputFromWindow(PlayMusicActivity.this.getCurrentFocus().getWindowToken(), 0); }

2015-01-06 17:18:15 572

原创 android搜索本地媒体库中的音乐文件

建立一个bean来存储音乐信息public class MediaEntity implements Serializable { private static final long serialVersionUID = 1L; public int id; //id标识 public String title; // 显示名称 public String display_na

2015-01-04 16:22:06 8342

原创 电话接听自动打开免提功能实现

public class PhoneHandsoffReceiver extends BroadcastReceiver { private TelephonyManager telephonyManager; private Handler myHandler = new Handler(); @Override public void onReceive(Context cont

2014-12-31 17:34:31 1977

原创 android关于蓝牙开发的记录

需要的权限 关于监听蓝牙连接状态的actionpublic final static String ACL_CONNECTED = "android.bluetooth.device.action.ACL_CONNECTED";public final static String ACL_DISCONNECTED = "android.bluetooth.devi

2014-12-31 17:07:00 1560

原创 Jsoup的学习与使用

Jsoup的详细介绍可以参考:http://www.open-open.com/jsoup/如果对于前端html,js,css有了解的会发现Jsoup绝对是一款高效的开源软件,其一大特点就是支持选择器来对html进行解析,工具的语法与js有些相似,用起来非常方便。下面的代码是从一个古诗词网站上抓取辛弃疾的词,很简单,基本上覆盖了Jsoup的基础语法。package org.zdnuist.

2014-12-27 12:04:38 407

原创 JAVA实现选择排序

选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。选择排序的主要优点与数据移动有关。如果某个元素位于正确的最终位置上,则它不会被移动。选择排序每次交换一对元素,它们当中至少有一个将被移到其

2014-12-26 11:29:38 358

原创 JAVA实现插入排序

一般来说,插入排序都采用in-place在数组上实现。具体算法描述如下:从第一个元素开始,该元素可以认为已经被排序取出下一个元素,在已经排序的元素序列中从后向前扫描如果该元素(已排序)大于新元素,将该元素移到下一位置重复步骤3,直到找到已排序的元素小于或者等于新元素的位置将新元素插入到该位置后重复步骤2~5package org.zdnuist.main;/** *

2014-12-25 11:52:55 360

原创 JAVA实现冒泡排序

冒泡排序算法的运作如下:比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。针对所有的元素重复以上的步骤,除了最后一个。持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。package org.zdnuist.main;public class Bubble

2014-12-23 15:34:44 370

原创 android动态加载jar与dex

public static String getCorrectUrl(String liveUrl, long time, Context context) { File dexFile = context.getDir("dex", 0); File jarFile = new File(MyApp.getPath()); String jarStr = new File(ja

2014-11-04 17:10:57 899

转载 IntentService

IntentService

2014-10-22 20:59:42 464

转载 Android service被杀后自动重启

Android开发的过程中,每次调用startService(Intent)的时候,都会调用该Service对象的onStartCommand(Intent,int,int)方法,然后在onStartCommand方法中做一些处理。然后我们注意到这个函数有一个int的返回值,这篇文章就是简单地讲讲int返回值的作用。       从Android官方文档中,我们知道onStartComma

2014-10-21 21:52:49 1317

原创 Android手机扫描同一网段下的电视盒子的方法

首先保证电视盒子的debug开关是打开的,让后同lai

2014-10-21 21:44:12 2221

转载 Process.waitFor()的返回值含义

以下是Linux中返回值对照表"OS error code   1:  Operation not permitted""OS error code   2:  No such file or directory""OS error code   3:  No such process""OS error code   4:  Interrupted system call"

2014-10-21 21:38:30 2188

原创 android开发中常用的一些集成开放平台(持续更新)

推送平台:

2014-10-12 23:19:59 528

MyEclipse2013高效破解工具

可以高效的破解myeclipse2013版本,本人已经实验过,非常好用!

2013-04-09

亚信联创笔试题(真心管用)

亚信联创面试题java基础知识 亚信联创笔试2011浙工大10月 2010亚信联创java笔试题 操作系统复习题(1)

2012-12-25

velocity-1.7.zip

最新的velocity开发包。 ava模板引擎   Velocity是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象。   当Velocity应用于web开发时,界面设计人员可以和java程序开发人员同步开发一个遵循MVC架构的web站点,也就是说,页面设计人员可以只关注页面的显示效果,而由java程序开发人员关注业务逻辑编码。Velocity将java代码从web页面中分离出来,这样为web站点的长期维护提供了便利,同时也为我们在JSP和PHP之外又提供了一种可选的方案。   Velocity的能力远不止web站点开发这个领域,例如,它可以从模板(template)产生SQL和PostScript、XML,它也可以被当作一个独立工具来产生源代码和报告,或者作为其他系统的集成组件使用。Velocity也可以为Turbine web开发架构提供模板服务(template service)。Velocity+Turbine提供一个模板服务的方式允许一个web应用以一个真正的MVC模型进行开发。

2012-07-19

java常用的设计模式和代码

完整的设计模式,对java的学习有很高的提升。

2012-07-13

spring2.5-中文参考手册

详细介绍Sping框架 Sping2.5的新特性 web层的应运 基本原理 bean的应运

2011-12-07

空空如也

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

TA关注的人

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