- 博客(35)
- 资源 (12)
- 收藏
- 关注
原创 Android Beam 文件传输失败分析与解决
最近在修改Android7.0原生平台的一些bug,其中有关Android Beam传输文件的一些问题还是蛮多的。所以特地找时间总结下曾经踏过的坑。1.传输的文件名包含中文时,导致传输失败。2.传输的文件名包含特殊字符时,导致传输失败。
2017-09-17 17:41:05 6552 1
原创 Android Studio 出现 Gradle's dependency cache may be corrupt 错误解决方法
将as更新到2.3版本后,打开项目时提示使用新的gradle版本了,结果出现了错误如图: 猜测可能是因为下载的新版本gradle压缩包损坏了导致出错,打开gradle设置 打开路径c:/Users/用户名/.gradle目录,进入.\wrapper\dists可以看到当前本地gradle版本,as更新2.3版本后使用gradle 3.3版本,进入gradle-3.3-all文件夹 ...
2018-05-06 20:32:12 641 1
原创 [置顶]Android Studio 初体验
安装这个IDE最重要的就是配置JAVA环境变量。在第一次的时候提示选择SDK的路径,我们只要配置一下就ok了。哈哈,当然这个自带的主题不是怎么好看,我们可以选择这个按钮来配置我们的IDE环境。大家是不是觉得我这个字体有一点好看呢?嘿嘿我是专门下载了一个字体,小伙伴们也可以到网上去下载,哈哈。然后怎么设置呢?点击了刚才那个按钮之后,我们找到这一个选项 然
2017-04-08 15:51:16 922
原创 Android控件TextView显示html文件中的图片
我们知道要让TextView解析和显示Html代码。可以使用:1 Spanned text = Html.fromHtml(source);2 tv.setText(text);来实现,这个用起来简单方便。但是,怎样让TextView也显示Html中节点的图像呢?我们可以看到fromHtml还有另一个重构:fromHtml(String source, Html.I
2017-04-08 15:51:10 1290
原创 RelativeLayout布局的一点坑
问题背景:前几天自己负责的模块出现了一个crash的问题,crash啊,很严重有木有!拿到Log后分析,NullPointException,好吧,根据行数定位出出现问题所在的代码。 然后发现了毕现的场景:进入一个页面,页面内有一个ProgressBar(match_parent)去请求网络,考验手速的时候到了,哈哈哈,在数据还没请求完成的时候,也就是ProgressBar还没消失的时候,快速的点
2016-12-31 12:28:07 1274
转载 Android中子线程真的不能更新UI吗?
之前做项目的过程中,有时候会遇到在子线程中也可以去更新UI而没有报错,虽然不知道原因,但为了保险起见,还是会把UI的操作通过Handler+Message的方式放到主线程中执行。今天偶尔看到这篇博客,终于解答了心中的疑惑本文转载自:http://blog.csdn.net/xyh269Android的UI访问是没有加锁的,这样在多个线程访问UI是不安全的。所以Android中规定只能在UI线程中访
2016-10-11 23:16:39 572
转载 一个线程的独白
本文转载自程序师 http://www.techug.com/a-thread-say 今天在程序师上看到一篇文章,是讲线程从创建到死亡的生命历程,采用第一人称线程自述的方式,妙趣横生。所以,分享过来给大家乐乐,同时也能学到线程的生命周期知识。我是一个线程, 我一出生就被编了个号: 0x3704, 然后被领到一个昏暗的屋子里, 这里我发现了很多和我一模一样的同伴。我身边的同伴0x6900 待的
2016-09-16 21:46:18 676
原创 Android版本与SDK Api对应的关系
由于需要经常性的查找Android版本与SDK api的对应关系,每次查完后就忘了,然后下次又去网络上查找, 浪费了很多时间和精力,现在把它整理出来:增加4.4W 5.0
2016-09-11 12:54:33 971
原创 android通话记录的查询与删除
CallLogProvider介绍系统的通话记录,是通过 ContentProvider 来对外共享的负责存放呼叫记录的内容提供者源码在 ContactsProvider 项目下:源码路径: com/Android/providers/contacts/CallLogProvider.Java使用到的数据库在: /data/data/com.android.providers.contac
2016-07-31 19:01:26 5247
原创 Markdown使用指南
自从CSDN博客推出Markdown编辑器后,深深的被她清晰、简洁的排版方式所吸引,遂决定后面的博客都用Markdown编辑器编写发布。 可自己对Markdown语法标记并不了解,所以决定先研究下Markdown的用法,以便后面更加顺畅的书写博客^_^认识 MarkdownMarkdown 是一种轻量级的「标记语言」,它的优点很多,目前也被越来越多的写作爱好者,撰稿者广泛使用。看到这里请不要被「标
2016-07-30 18:29:06 649
原创 应用开机自启问题排查
问题背景:由于项目接近尾声,近期测试人员主要针对应用性能、稳定性等方面进行集中测试,以保证应用上线后的稳定运行。 前几天测试人员提出一个bug,手机开机后应用在后台启动起来了,以下为测试步骤: 1. 将手机手动重启或者使用adb reboot命令重启 2. 手机开机后,静置手机五分钟(不做任何操作) 3. 五分钟后,使用adb shell dumpsys meminfo查看内存占用情况实际结
2016-07-30 15:21:45 1582 4
原创 代码坏味道清单
主要对日常编码过程中的一些陋习予以纠正,算是一篇编程规范吧。可以作为项目代码Review时的checklist:1.Duplicated Code(重复的代码)臭味行列中首当其冲的就是Duplicated Code。如果你在一个以上的地点看到相同的程序结构,那么当可肯定:设法将它们合而为一,程序会变得更好。最单纯的Duplicated Code就是[同一个class内的两个方法含有相同表达式(exp
2016-07-29 21:35:56 1250
原创 常用正则表达式集合
一、校验数字的表达式 1 数字:^[0-9]*$ 2 n位的数字:^\d{n}$ 3 至少n位的数字:^\d{n,}$ 4 m-n位的数字:^\d{m,n}$ 5 零和非零开头的数字:^(0|[1-9][0-9]*)$ 6 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$ 7 带1-2位小数的正数或负数:^(\-)?\d+(\
2015-10-14 22:54:09 681
原创 TextView自定义超链接样式
TextView自定义超链接样式今天在做项目的时候,有个需求要求点击一个文本跳转网页,而且该文本无下划线。本来以为很简单,就在网上查找TextView是否有属性可以直接设置,发现并没有(这个真可以有好么),网上都是一些百家之言,各有各的实现方法。于是,我综合一下网上的实现方案,就动手做起来。其实,要实现TextView超链接样式的自定义,关键是该类ClickableSpan,其提供的重写样式的方法:
2015-10-12 22:58:40 1785
原创 我的2014
今天回家啦,向公司请了两天假,不要问我为什么这么晚放假(积极执行国家假日办安排),反正是得以脱身了。 回到家,快下午3点了,老妈做了碗面条,无意间看到老妈染黄头发了,我打趣说:您也赶时髦啦。老妈淡淡的说:前面头发白了好多,不染怎么看呢,你又不给我买假头发。我顿时鼻子一酸,我清晰的记得,我六月份回来的时候,老妈也只零星的有点白头发…… 晚一些时,老爸回来了,聊了几句,问我怎么换手机了,我说原来的那
2015-02-16 23:40:17 1715 5
原创 Android基础--全局变量传值Application
在Android应用程序中,可以利用对象Application在各个Activity中传递数据,相当于web应用中的Application作用域,作用于应用全局。 现在用代码说话: 1.首先写一个类去继承Application package com.hdfy.app;import android.app.Application;
2014-12-20 23:04:08 1508
原创 Mysql常用操作
#直接在控制台上输入:修改mysql登陆密码mysqladmin -u root "old password" "new password"mysql --version或者 select version();登陆mysqlmysql -uroot -pmysql权限分配 用户绑定特定数据库:grant all on wawcms.* to wawcms
2014-12-03 10:00:15 743
原创 Linux学习杂记
最近一口气看完了韩顺平老师讲的Linux视频教程,自己也在学习的过程中做了些笔记,记载如下,希望帮助到一些喜欢研究Linux的同学,也算是在云端备份一下笔记吧,以免电脑出现不可控的因素而遗失自己的心血。首先声明,这篇笔记不是按照韩老师讲的顺序来写的,可能有些凌乱,但我相信,你总能找到你想要的信息: Linux必看书籍: 鸟哥的私房菜 Linux编程从
2014-10-05 11:33:30 1487
原创 Android 不锁屏(按power键不用滑动解锁,直接显示桌面)
代码:KeyguardManager keyguardManager=(KeyguardManager )getSystemService(Context.KEYGUARD_SERVICE);String lockTag=MainActivity.this.getLocalClassName();KeyguardManager.KeyguardLock keyguardLock = k
2014-09-18 21:43:07 3379
转载 Android模拟器使用SD卡
Android模拟器使用SD卡1.创建镜像文件 用cmd中进入到android的SDK的Tools目录下,执行mksdcard创建。 例如我的tools目录为:E:\skyland\android-sdk-windows-1.0_r2\tools> 则:E:\skyland\android-sdk-windows-1.0_r2\tools>mksdcard 128
2014-07-22 19:26:25 1190 2
转载 android 开发中遇到的问题及解决方式
1、当import一个新的android项目时,项目名称上出现一个红色的感叹号,程序不能运行。原因:工程中classpath中指向的包路径错误。解决方法:在项目名称上点右键选择Properties,然后选择Java Bulid Path中的libraries选项,其中出现红色x号的路径为错误路径,删除之后,通过Add External Jars添加正确路径,点击确定之后,在Package
2014-07-22 19:20:11 1760
原创 三种获得LayoutInflater的方法
// three ways to get the LayoutInflater LayoutInflater inflater = getLayoutInflater(); LayoutInflater inflater = LayoutInflater.from(getApplicationContext()); LayoutInflater inflater = (La
2014-07-05 17:12:33 1017
原创 Android中程序卸载的问题
在an只能通过调用系统卸载界面,不能自己通过代码卸载。只需要一个URI就可以了Uri packageURI = Uri.parse("package:" + packageName);Intent uninstallIntent = new Intent(Intent.ACTION_DELETE, packageURI);startActivity(uninstallIntent)
2014-04-06 22:10:11 921
原创 判断Android系统程序以及用户安装的程序
ApplicationInfo appInfo = temp.applicationInfo; boolean flag = false; if ((appInfo.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) != 0) { flag = true; } else if ((appInfo.flags & Ap
2014-04-06 22:03:43 1079
原创 两种内容加载显示方式
1.ProgressDialogprogressDialog = ProgressDialog.show(AppExploreActivity.this, "请稍候...","正在加载本机安装的程序", true, false);
2014-04-06 21:58:15 1107
原创 获得系统中所有安装程序的信息
PackageManager pm = getPackageManager()List list = pm.getInstalledPackages(PackageManager.GET_UNINSTALLED_PACKAGES)其中:
2014-04-06 21:25:40 1000
原创 查询数据
一,单表查询1.查询所有字段 SELECT 字段1,字段2,字段3...FROM 表名; SELECT * FROM 表名;eg: SELECT id,stuName,age,sex,gradeName FROM t_student ; SELECT stuName,id,age,sex,gradeName FROM t_student ; SELECT *
2013-11-28 16:26:51 929
原创 数据库表基本操作
一:创建表 表是数据库存储数据的基本单位。个一个表包含若干字段或记录 ; 语法: CREATE TABLE 表名(属性名 数据类型 [完整性约束条件], 属性名 数据类型 [完整性约束条件], ........ 属性名 数据表格 [完整性约束条件]
2013-11-28 14:38:03 1155
原创 数据库基本操作
一:数据库简介 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库;二:显示所有数据库 show databases; 三:创建数据库 create database 数据库命 四:删除数据库 drop database 数据库名
2013-11-27 23:12:13 1348
原创 递归实现猴子分桃 java实现
5只猴子摘了一堆桃子,约好第二天早上来分。第一只猴子来得早,它将桃子平分成成5堆,多出1个,它把多出的一个吃了,把属于自己的一堆拿走了,将剩下的还混成一堆,其他猴子来了也正好按一样的方法处理。编程求出原来最少有多少个桃子。(用递归函数。)下面是我写的递归算法:public class PeachDivideAlgorithm { private static int num;//
2013-11-26 20:08:19 4985
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人