- 博客(14)
- 资源 (7)
- 收藏
- 关注
原创 Android原生加载显示在线PDF链接
工作需求,需要加载一个在线pdf,链接以“.pdf"结尾。通过查找,大都需要先把pdf文件下载下来,然后再加载,有以下几种实现方式:方法一 :参考谷歌demo(android-PdfRendererBasic)这个方案的好处是对apk安装包的体积基本无影响;缺点 ①遇到PDF文件过大的时候可能OOM ②只能查看PDF文件,无法拓展,如果后续出现Word文档则无法满足。方法二:使用JS 处...
2019-03-25 17:23:09
4579
2
原创 WebView下载点击无反应问题
背景今天产品反馈,推荐列表应用下载不下来,感觉不应该啊,WebView我们移动端没有做任何操作和拦截,应该不会出现这种问题啊。所以把锅甩给前端了,前端研究了半天,说搞不了!找不原因,哈哈!(后来才发现是我们的锅)原因系统WebView 默认是不支持下载的,需要开发者自己实现.本人也是刚知道的,捂脸!解决方案一:对下载链接进行拦截判断 @Override publi...
2018-10-30 17:51:25
3898
原创 使用DownloadManager进行更新下载,部分机型下载失败解决方案
一直以来都是用downloadManager进行apk下载的,然后进行更新安装。昨天客服反馈有部分用户更新失败,经过代码研究和网络搜索,推断可能的原因是部分国产机型在系统修改的国产中,对downloadManager进行了阉割!!!(真快被坑死了)上方案前的代码,绝大部分机型没问题,vivoX6,Vivo7Plus可能会出现这个问题(用户反馈的机型,但是找不到测试机,所以是可能。。。)上之前的...
2018-10-26 17:37:26
7839
原创 调用系统短信界面,多联系人发送(兼容VIVO)
调用系统短信界面,多联系人发送(兼容VIVO)产品之前问了一个功能,需要跳到短信发送界面,并设置短信内容和多个联系人,所以进行了写了个demo,而且发现这里面有个VIVO的兼容性Bug.旧代码在网上看到的代码,大多是这个方法 /** * 跳转短信 * 测试机型:华为,小米,vivo,oppo * 发送单个联系人,这个方法都没有问题 * 发送多个联系人...
2018-10-22 10:57:19
1034
原创 ViewFlipper实现文字轮播(仿淘宝头条垂直滚动广告)
ViewFlipper实现文字轮播(仿淘宝头条垂直滚动广告) 广告条目可以单独写成布局文件,然后在布局文件或者代码中添加到总布局中从源码可以看出,其实ViewFlipper间接的继承了FrameLayout,也可以说ViewFlipper其实就是个FrameLayout,只不过在内部封装了动画实现和Handler实现一个循环而已。布局文件<?xml version=...
2018-04-19 22:27:57
1141
1
原创 百度地图的使用
百度地图的使用百度地图的使用准备工作获取API Key建立工程添加地图引擎到android工程添加权限初始化地图引擎引入布局 com.baidu.mapapi.MapView初始化地图设置管理地图生命周期地图相关操作基本操作图层分类覆盖物搜索POI(Point of interest兴趣点) 三种搜索方式路线搜索(驾车为例)定位...
2018-04-19 22:25:06
880
原创 主题切换ThemeChangeDemo(白天和夜间切换)
白天和黑夜主题切换实现效果首先就是需要在app中准备两套主题:白天主题在values文件夹中创建styles.xml<resources> <style name="DayTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <!-- Customize your th...
2018-04-19 22:23:54
1360
转载 反射机制相关的API方法
JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。在android中Google很多的类的某些方法不让第三方应用去调用,通过java反射机制能把这些隐藏方法获取出来并调用相关的API 1.实例化Class对象,有三种方式, ...
2018-02-28 15:04:18
473
原创 Android单点登录,互踢下线代码实现
Android单点登录,互踢下线代码实现分享一个在项目中必然会用到的小功能——单点登录,也就是我们常说的互踢下线。国际惯例,先上效果图一、先说逻辑,其实挺简单 首先,对于监听账号是否在其他设备登录的方法,我们一般都会使用第三方即时通讯自带的监听功能,优点就是代码简单,可以实时监听。没有集成第三方即时通讯的,就得用代码自己实现了,当然这不是我们今天的重点,不再讨论。...
2017-09-19 01:16:16
6114
原创 Android 对话框系列——类似IOS风格的对话框
Android 对话框系列——类似IOS风格的对话框分享一个简单的常用的对话框类,按照国际惯例,先上图布局简单,先上布局。一个标题,一个内容,两个按钮<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_par...
2017-09-18 00:04:14
1086
转载 Git常用命令
正在练习使用git,所以网上找了点总结给大家!一般来说,日常使用只要记住下图6个命令,就可以了。但是熟练使用,恐怕要记住60~100个命令。下面是我整理的常用 Git 命令清单。几个专用名词的译名如下。 Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 一、新建代码库# 在当前目录新建一个G
2017-05-20 11:46:26
297
原创 如何删除github上已创建的代码库
在github上创建代码库的时候,不小心创建重复了,所以想删掉一个,结果看了半天才明白在github上怎么删除已创建的仓库。接下来看步骤:点击去你所要删除的仓库,在顶部找到setting按钮点击setting按钮,然后把拖到页面最下面,你就能找到删除仓库的按钮了(不得不说,这个删除按钮藏得真深)!输入你要删除的仓库名,点击下面的确认按钮就可!到这就一切OK了!
2017-05-19 14:20:33
3367
1
原创 Andorid异常:Binary XML file line #: Error inflating class
这个异常 是在我写的一个自定义view中出现的,一运行就报错,下面把log贴出来java.lang.RuntimeException: Unable to start activity ComponentInfo{com.demo.demo01/com.demo.demo01.MainActivity}: android.view.InflateException: Binary XML file
2017-05-18 18:31:47
1799
原创 Android CheckBox实现多选、全选、反选功能
CheckBox实现多选、全选、反选功能前不久项目中用到了多选列表功能,在这里讲述一下实现思路以及需要注意的地方, 不足之处,敬请谅解!实现多选功能列表一般可以用ListView 或RecyclerView嵌套CheckBox实现,这里用的是ListView。废话不多,先上图 先说一下多选实现思路 首先需要一个Map集合用于存储每一个条目的选中状态。选中哪个条目,则把...
2017-05-14 16:35:33
9967
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人