android开发
解牛之术
这个作者很懒,什么都没留下…
展开
-
解决Android接入服务器NanoHttpd响应慢的问题
Android植入NanoHttpd服务器响应慢的问题原创 2022-05-19 17:44:24 · 1014 阅读 · 1 评论 -
Android app图标在手机桌面显示过小
开发中,app安装在手机之后,图标明显比其他app的图标要小,开始认为与手机设备有关,后经检查后发现与手机分辨率有关,出问题的为三星手机1080p,Android会根据手机分辨率自动到相应的文件夹下(drawable/mipmap)寻找对应的图片,因为我在1080p对应的文件夹下的图片分辨率小,所以显示在手机上app图标要比其他手机小一圈,使用图片时最好和Android工程中自带的机器人图标大小对原创 2017-01-10 13:28:59 · 5632 阅读 · 0 评论 -
Android 弹出全局dialog
项目中需要在网络断开连接时设置全局弹出框提醒,要求当网络断开的时候,在app内的任一页面均能弹出提示框提示用户网络断开,开始认为dialog需要依附在Activity上,后经查询可采取悬浮窗的模式,使其不必依附于Activity,可在任一页面弹出,代码如下: AlertDialog.Builder builder = new AlertDialog.Builder(getApplicatio原创 2017-01-11 17:13:12 · 14703 阅读 · 4 评论 -
Android 集合操作关于Exception in thread "main" java.util.ConcurrentModificationException
开发日程模块,若显示日历日期有日程事件则需要在该日期上标记,在模拟机上测试时,当快速切换月份时导致该错误出现,代码如下:@Override protected void onPostExecute(ArrayList schedules) { super.onPostExecute(schedules); if (schedule原创 2017-01-20 12:14:24 · 521 阅读 · 0 评论 -
Android ScrollView中嵌套ListView,滑动冲突问题的解决
在项目开发过程,遇到ScrollView中嵌套ListView,结果点击ListView上下滑动时,整个页面滑动,也就是滑动事件被ScrollView消费掉了,造成listView无法滑动的结果,然后改动布局,替换成fragment,在fragment里面实现listview的刷新,结果还是不行,最后从view的事件分发机制入手,在滑动listView的时,屏蔽掉ScrollView的滑动事件,让原创 2016-09-22 13:01:09 · 6905 阅读 · 0 评论 -
Android socket与服务器通信及心跳连接的实现
在项目中,有如下需求:Android客户端向服务器发送数据,收到服务器返回的数据发送成功标识后,客户端即与服务器建立数据一来一往的心跳连接,若服务器端断开时,客户端接收到通知,关闭Service停止发送数据;代码如下:public class BackService extends Service { private static final String TAG = "BackSer原创 2017-02-14 17:19:48 · 12130 阅读 · 2 评论 -
Android ScrollView中嵌套ExpandableListView,item不显示的问题
在项目中,发现当需要用ScrollView嵌套ExpandableListView时,无论ExpandableListView的width设置为match_parent还是wrap_content,其item均只显示group的第一个,其他都不显示,点开group第一行,里面的child数据也不显示。网上查阅后发现,需要重新设置ExpandableListView的高度,代码如下:public原创 2017-03-24 18:45:38 · 2212 阅读 · 0 评论 -
Android xutils3同时上传多张图片及上传服务的终止
项目中,上传图片功能要求,可根据用户的选择一次上传1-10张图片,并且在上传时仿QQ发送图片时的样式显示上传进度;在退出上传界面再次进入时,进度要继续刷新,在上传因意外中止时在图片中出现刷新按钮,显现“上传失败”,点击刷新按钮可再次上传,如下图所示:以下对该功能要求的代码逻辑进行说明,Demo后面会上传到资源:1.在adapter数据适配器中,设置接口回调,在getView()方法原创 2017-04-18 17:09:37 · 4435 阅读 · 15 评论 -
Android 集成融云通信 部分间断手机弹框 程序停止运行 问题
在项目中,集成融云的即时通讯服务,在魅族(魅蓝note2)上,可以正常使用,在虚拟机上运行时会隔一段时间弹框提醒 “xxx程序停止运行”,即使app已经关闭也是如此,虽然程序可以正常使用,但总是出现不可控的弹框肯定是不行的,通过Log发现,弹框出现时会报出java.lang.UnsatisfiedLinkError的错误,此种错误代表.so文件加载出错,查阅融云文档,对此类问题的解答是,目前融云s原创 2017-04-20 17:06:48 · 1479 阅读 · 2 评论 -
用到的Android第三方功能地址(持续更新)
以下是工作中用到的博客,这里记录一下1.仿QQ ListView右滑删除操作http://blog.csdn.net/lzyang187/article/details/50737134http://www.bkjia.com/Androidjc/938643.html原创 2016-11-17 14:46:30 · 451 阅读 · 0 评论 -
Android 同一个BroadcastReceiver在两个程序里执行
在项目中,需要将同一段程序变为两个app,并且可以安装在同一个手机里,一般而言两个相同的程序安装在手机里,会被互相替代,但是我们改一下gradle文件中的applicationId(如图所示),使两个程序该值不同即可同时安装在手机里。在程序中,有socket心跳连接服务,在心跳连接断开时会发送广播提醒,从而弹框提醒用户连接已断开。经改动Id后的两个app,在测试时发现,弹框总会弹出两次,这种情原创 2017-04-22 10:34:55 · 1400 阅读 · 0 评论 -
Android 集成科大讯飞语音识别
项目中集成科大讯飞语音识别以及随着语音分贝的大小,声纹波动动画的效果,整个效果图如下:以下为项目中加入语音识别模块的流程及需要注意的问题:1.根据科大讯飞平台的文档介绍,将科大讯飞语音接入项目,文档链接如下:http://www.xfyun.cn/doccenter/awd2.项目中只需要用到语音识别,这部分有两个类:RecognizerDialog:识别语音功能,原创 2017-04-25 15:30:22 · 5627 阅读 · 7 评论 -
Android 设置文件后缀名及限制文件的大小获取手机文件
本功能可根据设置的限制文件大小及文件的后缀名,列出手机内所有的文件。如下图所示:可根据点击的文件获取相应的文件列表,部分代码说明如下: //获取文件大小 String fileSizeStr= FileUtils.getFileSize(data); //限制文件大小 if (fileSi原创 2017-05-17 12:13:31 · 4154 阅读 · 0 评论 -
Android 融云即时通讯开发
项目中需要用到即时通讯,经过一番研究,现两个用户已可以互相通信;下面介绍关于融云的开发过程:1.融云的业务架构可在http://www.rongcloud.cn/docs/quick_start.html,中查看融云的架构介绍,简单来说,产品的用户信息(如头像、昵称、id等)存储在自己的服务器中,用户的通信消息则通过融云转发,若想获取 聊天记录,可通过付费获取,具体价格及服务见http:/原创 2017-06-14 13:52:53 · 4332 阅读 · 57 评论 -
Android AlarmManager加入与取消闹钟提醒, Notification不显示的问题
关于日程提醒,用Android系统的AlarmManager,将提醒时间加入系统闹钟并同广播关联,在闹钟到点提醒时,触发广播,然后弹出通知栏通知日程,以下为设置闹钟的代码 private void addRemind(){ //得到日历实例,主要是为了下面的获取时间 Calendar mCalendar1 = Calendar.getInstance();原创 2016-12-16 18:47:37 · 11133 阅读 · 0 评论 -
Android EditText与键盘的关系及实现键盘搜索
1.EditText与键盘位置间的关系2.项目字体不随系统字体大小变化3.键盘搜索功能4.监听EditText内容字数变化原创 2016-12-22 14:57:33 · 1200 阅读 · 0 评论 -
关于Fragment与Activity生命周期前后关系详解
本篇文章讲解自己探讨的Activity动态添加Fragment时,分4种情况:1.使用replace(),且不加入回退栈addToBackStack(null);2.使用replace(),且加入回退栈addToBackStack(null);3.使用add(), 且不加入回退栈addToBackStack(null);4.使用add(), 且加入回退栈原创 2016-09-02 16:23:44 · 1384 阅读 · 0 评论 -
Android LayoutInflater原理分析,带你一步步深入了解View(一)
本篇文章为转载,原出处:http://blog.csdn.net/guolin_blog/article/details/12921889先来看一下LayoutInflater的基本用法吧,它的用法非常简单,首先需要获取到LayoutInflater的实例,有两种方法可以获取到,第一种写法如下:[java] view plain copy转载 2016-09-05 17:27:43 · 427 阅读 · 0 评论 -
Android drawable-v21文件夹下xml文件,手机版本不兼容
在开发中遇到这个问题,把xml文件放在drawable-v21文件夹下,在Android版本API 22中,可以正常运行,但是在API19中则报出xml布局文件错误的问题,经过一番排查,才知道是手机版本兼容问题,drawable-v21文件夹是v7包用于存放xml文件,但是在API 21以上才可使用,否则会报出xml布局文件的错误,要在API 21以下使用drawable中的xml文件,还是要把原创 2016-09-22 13:38:45 · 7457 阅读 · 0 评论 -
ComponentName的使用及相关介绍
原文出处:http://blog.csdn.net/u012702547/article/details/49557905ComponentName,顾名思义,就是组件名称,通过调用Intent中的setComponent方法,我们可以打开另外一个应用中的Activity或者服务。实例化一个ComponentName需要两个参数,第一个参数是要启动应用的包名称,这个包名称是指清转载 2016-10-12 21:30:57 · 2089 阅读 · 0 评论 -
Android关于PowerManager.WakeLock的使用相关介绍
文章为转载;http://landerlyoung.github.io/blog/2014/10/31/androidzhong-de-wakelockshi-yong/android系统在手机屏幕锁定之后一般会让手机休眠,以提高电池的使用时间。但是休眠意味着CPU频率降低,有时候可能需要做一些需要大量运算的任务,所以需要唤醒CPU。WakeLock可以做到这一点。WakeLo转载 2016-10-12 21:34:41 · 4082 阅读 · 0 评论 -
Android 观察者模式
看到别人的项目中用到观察者模式,虽然没有完全理解到设计思想,但是知道了如何使用这种模式,该模式可以及时更新数据,以后再代码中,不需要在使用接口回调,或者intent传递数据以下为一个代码示例:Observer管理者:public class ObserverManage extends Observable{ private static ObserverManage myOb原创 2016-09-29 19:00:28 · 468 阅读 · 0 评论 -
Android 设置RadioButton文字在图片左边
name="radiobutton_right_style"> name="android:layout_width">match_parent name="android:layout_height">0dp name="android:layout_weight">1 name="android:button">@null name="android:d原创 2016-11-28 18:29:19 · 2977 阅读 · 0 评论 -
RecycleView 列表的item点击事件
在工作中,用到横向滑动,选择年份且选择的item变色的功能,就想到了RecycleView可以完成横向滑动,结果在使用时发现,布局虽然没有问题,但是RecycleView没有item点击事件,更不用说类似于RadioButton的单选,后经查询,网上建议,可自己写接口回调,完成item的点击事件,后根据这一思路,完成item点击事件以及item的单选,以下为代码:Adapter的代码:pu原创 2016-11-28 18:31:56 · 1436 阅读 · 0 评论 -
Android SwipeRefreshLayout的 swipe.setRefreshing(true)无法自动刷新问题
在项目中要求进入Activity时,即出现下拉刷新样式,以提醒用户正在数据正在刷新,但是用swipe.setRefreshing(true)方法却达不到效果,没有作用,经查找需要 swipe.post(new Runnable() { @Override public void run() { if (swipe.is原创 2016-12-08 19:00:31 · 3079 阅读 · 0 评论 -
Android 心跳连接功能 bindService()无法启动Service的问题
项目中的需要做心跳连接的功能,需Activity中启动Service,该功能从开始到完成,遇到好几个问题,有几点需要注意:1.在AS中创建aidl文件时,无法找到相应的java文件,后发现需要重新编译,方可生成相应的java文件2.在Activity中使用bindService()无法启动Service,该点有以下注意: a.在配置文件中android:enabled="true"属原创 2016-11-30 17:28:17 · 3217 阅读 · 0 评论 -
TextVeiw 的自定义View
根据项目需求需要制作出下图的页面效果:反映当前页面的考勤情况,用了自定义View实现,红色原片中的数字和下方的考勤类型说明文字都提供方法设置,在使用canvas.drawCircle()画圆时,刚开始把圆心坐标设置为(0,0),出来的效果是只出现四分之一的圆,把圆心坐标设置为半径的1/2,方全部显示,以下为源码:/** * Created by public on 2016/11/2原创 2016-12-09 18:06:11 · 463 阅读 · 0 评论 -
Android 判断通知栏是否打开及前往设置页面
项目中用到日程提醒功能,如果应用的通知栏没有打开,则需要提示用户前去打开通知栏,判断通知栏是否打开代码如下: private boolean isNotificationEnabled(Context context) { String CHECK_OP_NO_THROW = "checkOpNoThrow"; String OP_POST_NOTIFIC原创 2016-12-16 18:22:08 · 11687 阅读 · 5 评论 -
Android 字体图片设置
使用字体图片,图片属性更容易设置,图片如同字体一样,可设置颜色,大小,以下为使用步骤1.到 Iconfont-阿里巴巴矢量图标库 注册账号,首页图标说明:2.图标的选择与下载3.下载文件说明(Android部分)4.在项目中使用,把3中的ttf文件放在assets文件夹下:5.代码应用,若按照阿里矢量图标官网的使用方法,则相当麻烦,为简单使用可自定原创 2016-12-26 15:24:54 · 681 阅读 · 0 评论 -
Android自定义下拉刷新(附源码)
Android自定义ListView下拉刷新的背景,同时显示刷新的间隔时间,简单好用,可作为工具类转载 2016-01-05 00:36:55 · 547 阅读 · 0 评论