Android
文章平均质量分 89
3052world
人生本来就是一场修行
展开
-
AsyncHttpClient用法
一、AsyncHttpClient简介 基于Apache的HttpClient库构建的基于异步回调的Http客户端 。 所有请求都在应用程序的主UI线程之外进行,但任何回调逻辑都将在与使用Android的Handler消息传递创建的回调相同的线程上执行。二、AsyncHttpClient用法2.1 引入依赖包dependencies { compile 'com.l...原创 2018-04-10 15:59:42 · 3076 阅读 · 0 评论 -
Android入门教程 Activity生命周期
搞懂Activity生命周期对于Android开发非常重要。Activity生命周期大致可归纳为四种状态:运行态。当前Activity位于前台,用户可见,可获得焦点。暂停态。其他Activity位于前台,该Activity可见但不能获得焦点(比如启动一个对话框风格的Activity)。停止态。该Activity不可见,失去焦点。销毁态。该Activity结束。原创 2015-12-23 15:00:58 · 634 阅读 · 0 评论 -
Android入门教程 Fragment使用教程【实例讲解】
为什么要用Fragment想象一个APP场景,我们开发了一个图书阅读的APP,希望这个APP能够同时在手机和平板上使用。 众所周知,手机的屏幕小且为竖向,平板的屏幕大且为横向。如果我们开发的APP在界面方面完全一样,那么用户体验并非很好。另外,通过使用fragment能很好地提高组件复用性。 那么如何提高用户体验呢? 平板——左右布局 手机——单页布局 说得再多不如上图,请看图 主要知识原创 2016-03-17 22:42:09 · 2017 阅读 · 0 评论 -
Android入门教程 MediaPlayer教程【使用进度条】
目标:获取手机中的歌曲,并使用MediaPlayer播放歌曲第一步:创建适配器控件第二步:创建适配器第三步:绑定适配器第四步:为MediaPlayer创建播放、暂停、上一曲、下一曲、停止方法第五步:使用Thread和SeekBar实现进度条MainActivitypublic class MainActivity extends Activity { private ListView musi原创 2016-03-24 22:37:15 · 4266 阅读 · 2 评论 -
Android入门教程 自定义View详解 真实案例
本文通过一个21点游戏的案例进行讲解自定义View,代码注释里有详细解释。 共包含三个文件,分别是 TwentyOneActivity.java TwentyOneView.java activity_twenty_one.xmlActivity类,TwentyOneActivity.javapublic class TwentyOneActivity extends Activity {原创 2016-06-16 17:04:12 · 633 阅读 · 0 评论 -
Android入门教程 AsyncTask的使用及execute和executeOnExecutor方法
AsyncTask的使用分为三大步。创建一个子类继承AsyncTask;在子类中实现如下方法 doInBackground() onProgressUpdate() onPostExecute()调用execute方法(或executeOnExecutor方法)实例:通过AsyncTask模拟下载文件通过execute方法模拟串行下载通过executeOnExecutor方法原创 2016-08-23 15:37:25 · 17728 阅读 · 3 评论 -
Android入门教程 xutils框架入门教程
一、说明网上xutils的讲解很多,但是入门案例不多。这里我直接以一个图片下载的实际案例简单介绍如何入门。供第一次使用xutils的朋友学习。本案例以eclipse开发环境讲解。二、准备工作使用xutils3首先得有xutils的开发包。下载链接xutils3开发包下载开发包里有4大件。这四样原封不动拷贝到你自己建的项目中的libs文件夹。右键xutils.jar,Build path–>add三、原创 2016-09-24 16:55:19 · 622 阅读 · 0 评论 -
Android入门教程 SQLite的用法
一、为什么要用SQLite前面的博客中已经讲过了sharedpreferences的用法,大家也都看到了,sharedpreferences使用简单,但同时也有局限性,因为它是xml存储形式的,所以在排序、筛选等方面略显不足。提到排序、筛选、比较等需求,我们自然而然会想到数据库,这也正是android自带数据库——SQLite的来由。二、SQLite是什么SQLite数据库存储是Android系统原创 2016-09-27 16:26:56 · 870 阅读 · 0 评论 -
Android入门教程 sharedpreferences的用法
为什么使用SharedPreferencesandroid中的数据存储大致可以分为三大类:sharedpreferences存储file文件存储sqlite数据库存储相对于另外两种存储方式,sharedpreferences的存储更简洁、清晰,所以sharedpreferences存储成为android中非常受欢迎的存储方式。SharedPreferences是什么SharedPrefer原创 2016-09-26 14:41:27 · 868 阅读 · 0 评论 -
runOnUiThread使用实例
前面一篇文章(http://blog.csdn.net/jasper_success/article/details/50675651),通过计算质数这样一个例子讲解了Handler的用法,这里同样使用这个例子来讲解runOnUiThread的用法。通过这个方法可以更加简单地实现UI更新。直接上代码public class UIUpdateActivity extends Activity{原创 2016-02-22 17:00:00 · 847 阅读 · 0 评论 -
Android入门教程 Android开发环境搭建【详细教程】
一、安装JDK-JDK下载地址http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 注意正确选择下载版本,如果电脑是32位,那就选择32位版本(通常描述是Windows x86),如果电脑是64位,那就选择64位版本(通常描述是Windows x64)-JDK安装JDK安装起来很简单原创 2015-10-29 15:56:32 · 28769 阅读 · 4 评论 -
Android入门教程 BroadCastReceiver的使用
一、静态注册无序广播step1:新建类继承BroadcastReceiver,实现onReceive方法(在此方法中写接收到广播后的操作逻辑)public class MyBroadCastReceiverOne extends BroadcastReceiver{ @Override public void onReceive(Context context, Intent inte原创 2016-10-26 23:15:30 · 1110 阅读 · 0 评论 -
Android Studio查看数据库插件
效果图直接通过浏览器(最好用chrome)打开 使用步骤1、build.gradle中添加依赖(是模块级别的build.gradle)debugImplementation 'com.amitshekhar.android:debug-db:1.0.3' 2、浏览器打开 运行应用程序,你会在控制台DEBUG级别,看到一句http://XXX.XXX.X.XXX...原创 2018-03-21 14:08:47 · 4738 阅读 · 0 评论 -
Android6.0权限分配终极解决方案
Android6.0权限管理终极解决方案,简单、易用、方便、快捷。原创 2017-12-19 00:50:42 · 9539 阅读 · 0 评论 -
Android获取音乐专辑封面图
1、思路介绍step1:获取音频文件专辑ID音频文件的详细信息,通过多媒体数据库获取,里面有包括标题、演唱家、专辑名、歌曲长度等在内的各种信息step2:根据专辑ID继续获取专辑封面图根据专辑ID找到对应的专辑文件,并转换成Bitmap2、代码演示ContentResolver resolver = context.getContentResolver(); Cursor curso原创 2017-12-18 13:52:29 · 8779 阅读 · 3 评论 -
Android仿网易云音乐播放页面 背景虚化碟片效果
1、效果图仿网易云音乐播放页面,主要有4个关键点:背景虚化。获取音乐的专辑封面,将此图片作为背景图,并进行模糊虚化处理碟片合成。获取音乐的专辑封面,和黑色碟片图片进行合成碟片旋转。音乐播放时,碟片顺时针360度旋转;音乐暂停,旋转暂停指针旋转。音乐播放时,指针放到碟片上;音乐暂停,指针抬起2、背景虚化工具类public class BlurUtil { private static原创 2017-12-20 10:51:42 · 8585 阅读 · 1 评论 -
Android入门教程 Service的用法
为什么要使用Service我们在做项目过程中,经常遇到一些任务需要再后台执行(比如后台播放音乐、上传、下载等),这个时候就是Service大展身手的时候了。举个例子: 音乐播放器在播放音乐的过程中,我们按下Home键,前往其他APP执行别的操作,假如播放音乐的操作全都在Activity中完成,那么我们退到后台时,这个Activity很有可能被清掉,就不能正常播放音乐了。但是,如果你用了Servic原创 2016-09-21 10:58:09 · 702 阅读 · 0 评论 -
Android入门教程 HttpURLConnection的用法 HTTP请求
写在前面: android使用网络一定记得加上网络访问权限<uses-permission android:name="android.permission.INTERNET" />一、使用HttpURLConnection发送网络请求1、get方式发送请求step1:创建URL对象 step2:通过URL对象调用openConnection()方法获得HttpURLConnection对原创 2016-10-07 11:25:14 · 1373 阅读 · 0 评论 -
Android入门教程 fragment通信
一、Activity与Fragment之间通信1、Activity向Fragment传值在Activity中使用setArguments封装所需传递的值,在Fragment中使用getArguments获取值。 Activity代码示例Bundle bundle = new Bundle(); bundle.putString("name", "zhangsan");原创 2016-10-05 16:51:58 · 840 阅读 · 0 评论 -
Android入门教程 fragment的使用
一 、为什么要用fragment简单来讲,两句话 - 解决局部刷新问题 - 一定程度解决屏幕适配问题二 、什么是fragmentfragment直译过来是“碎片”的意思,也比较形象,在Android开发中它就是碎片。用Fragment替换TabHost是Google推荐的方案。fragment的优点使用Fragment可以在一个Activity中实现不同界面的灵活切换Fragment原创 2016-09-30 17:18:12 · 1054 阅读 · 0 评论 -
Android入门教程 handler的用法
本文讲解Android中Handler和Looper的使用,为什么要用Handler,为什么要用Looper,为什么有时候可以不用Looper,在这里你都会找到答案。原创 2016-09-22 16:42:31 · 579 阅读 · 0 评论 -
Error:failed to find Build Tools revision 23.0.2
在项目的 build.gradle 里面设置,注意有两个build.gradle最好都注意一下。把build.gradle里面的版本改为自己能运行的工程里面版本号。原创 2016-02-18 16:14:37 · 4469 阅读 · 0 评论 -
Android中Handler使用实例
本文通过“使用新线程计算质数”这样一个demo,简单讲解如何在Android中使用Handler进行多线程开发。 为了更好地理解Handler的工作原理,先介绍一下Handler一起工作的几个组件。Message:Handler接收和处理的消息对象Looper:每个线程只能拥有一个Looper。它的loop方法负责读取MessageQueue中的消息,读到消息之后就把消息交给发送该消息的Han原创 2016-02-16 16:37:27 · 3286 阅读 · 0 评论 -
listview图片错位
借鉴这两篇文章,绝对解决,亲测有效!原创 2013-12-12 16:39:53 · 1852 阅读 · 0 评论 -
Notification举例——简单程序
public class NotificationUtil extends Activity {private NotificationManager myNotificationManager;private int SIMPLE_NOTIFICATION_ID;private NotifyInfo notifyInfo;private Context context;pri原创 2012-02-23 14:30:41 · 860 阅读 · 1 评论 -
Resource ID #0x7f050001 type #0x12 is not valid
写listview测试用例时遇到这个错误仔细检查发现红字部分出错,记录之SimpleAdapter listAdapter = new SimpleAdapter(this, list,R.layout.user,new String[] { "deviceNum", "state" }, new int[] { R.id.deviceNum,R.id.state });原创 2012-02-09 15:53:58 · 9448 阅读 · 10 评论 -
ListView学习
原文在此http://stephen830.iteye.com/blog/1139917转载 2012-02-09 16:27:28 · 695 阅读 · 0 评论 -
dip, dp, px, sp区别
显示单位px和dip以及sp的区别dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。 px: pixels(像素). 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多。 pt: point,是一个标准转载 2011-12-09 15:23:42 · 589 阅读 · 0 评论 -
Caused by: android.content.res.Resources$NotFoundException: String resource ID #0x0
如果遇到这个问题,首先考虑以下原因:你是否在setText()方法中设置了一个int型变量,比如setText(10)。这样Android系统就会主动去资源文件当中寻找, 但是它不是一个资源文件ID, 所以就会报出这个bug。 解决办法:将int型业务数据,转换成String类型即可,比如setText(10+“”);原创 2011-12-10 10:25:50 · 27300 阅读 · 6 评论 -
ImageButton隐藏边框
网上看了那么多都是吹牛皮这句话才是王道android:background="@android:color/transparent"在xml中加上这句话原创 2011-12-09 19:42:37 · 2215 阅读 · 2 评论 -
adb命令不可用
出现该问题的原因:环境变量中只配置了D:\android-sdk\tools,而adb.exe和AdbWinApi.dll这两个文件不在tools文件夹下解决方法:将adb.exe和AdbWinApi.dll所在的文件夹目录即D:\android-sdk\platform-tools配置到环境变量中以上提到的两个路径信息请根据自己电脑的实际情况进行配置原创 2011-11-05 09:51:09 · 2741 阅读 · 0 评论 -
android中使用多线程——HandlerThread举例
简单举一个使用HandlerThread做异步处理的例子package jet.handler;import android.app.Activity;import android.os.Bundle;import android.os.Handler;import android.os.HandlerThread;import android.os.Loo原创 2011-11-04 17:39:11 · 1049 阅读 · 0 评论 -
Activity生命周期
onCreate() 设置Activity所使用的布局文件、按钮绑定监听器等静态设置操作onStart() 该Activity能被我们看到的时候就会调用onStart()onResume() 能够获得用户焦点onPause() 启动另外一个Activity的时候就会调用第一个Activity的该方法onStop() 当第一个Activity被完全遮挡住的时候调用该Activity的原创 2011-11-03 01:50:57 · 624 阅读 · 1 评论 -
android:drawSelectorOnTop含义
android:drawSelectorOnTop="true" 点击某一条记录,颜色会显示在最上面,记录上的文字被遮住,所以点击文字不放,文字就看不到android:drawSelectorOnTop="false" 点击某条记录不放,颜色会在记录的后面,成为背景色,但是记录内容的文字是可见的转载 2012-02-21 17:37:41 · 678 阅读 · 0 评论 -
Android设置全屏
//全屏this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);requestWindowFeature(Window.FEATURE_NO_TITLE);注意:一定要在setContentView(R原创 2012-04-20 16:48:54 · 828 阅读 · 0 评论 -
Android中使用Geocoding API
第一步:构造Geocoder API 需要的URLURL格式https://maps.googleapis.com/maps/api/geocode/output?parameters其中output有两个选项json/xml,parameters部分有address/language/sensor等多个选项URL示例https://maps.googleapis.com/ma原创 2012-09-19 12:31:38 · 3144 阅读 · 0 评论 -
Android中使用Google 地图
第一步:建一个包含Google APIs的工程第二步:获取Android Maps API 金钥第三步:载入MapView第四步:通过MapController控制地图缩放与移动获取密钥的方法:第一步:C:\Users\Jet>keytool -list -alias androiddebugkey -keystore "C:\Users\Jet\.android\debug.原创 2012-09-17 14:55:13 · 2330 阅读 · 1 评论 -
Android在线更新 远程安装程序
第一步:使用java.net的URLConnection对象来创建连接第二步:通过InputStream将下载的文件写入存储卡内缓存第三步:下载完毕之后,通过自定义的openFile()方法打开文件,判断文件类型,若为APK,开始安装第四步:准备离开Installer程序的同时,通过自制的delFile()方法,删除缓存内文件/** * 远程下载安装Android程序 *原创 2012-09-16 11:31:43 · 5160 阅读 · 0 评论 -
Android反编译与防止反编译
1、Android反编译 1)下载两个工具 dex2jar,jar2java 2)修改apk后缀为.zip,解压得classes.dex 3)用dex2jar.bat打开classes.dex得到classes.dex.dex2jar.jar 4)用jar2java打开上面得到的jar包即得Java文件2、Android防止反编译原创 2012-09-16 10:37:14 · 4875 阅读 · 3 评论 -
PhoneGap技术介绍
PhoneGap 开发语言: HTML, CSS, JavaScript开发工具: PhoneGap Development Tools, Development Code链接: http://phonegap.com/ 优点:开源、跨平台PhoneGap是一个开源项目,并且是跨平台的。有了它,JavaScript工程师能够轻松地利用网页技术(HTML/CSS/JavaSc原创 2012-09-12 16:56:21 · 1745 阅读 · 0 评论