-
Android 撸起袖子,自己封装 DialogFragment
本文的主要内容DialogFragment 是什么创建通用的 CommonDialogFragment实现各种类型的 DialogFragment在写正文之前,先来一波效果展示吧DialogFragmentDemos.gif一、DialogFragment 是什么DialogFragment 在 Android 3.0 时被引入,是一种特殊的 Fragment,用于在 Activity 的内容之上显示一个静态的对话框。...2017-07-08 阅读295
-
快速提升 Android App 的代码覆盖率
作者 | Sergey Grekov翻译 | ASCE1885审校 | 苏宓微信公众号 | mobilehub编写移动应用程序很难,编写好的和可维护的应用程序就更加困难了。在开发过程中,我们需要保证对代码库的每次修改不会降低代码质量和功能的可用性。在现代的移动应用开发中,很难想象在没有编写测试特别是单元测试的情况下,你...2017-07-07 阅读298
-
Android 项目最新架构
0.前言为了帮助开发着打造一款优秀的APP,Google可谓费尽心力,推出了各种诸如MVP,MVVM等等项目架构的思路,帮助开发者更加高效的开发,尽管这样,Google还是接着推出了一个新的项目架构,以便给予开发者更多的选择,至于这种架构思路和MVP等框架的优劣,各位看完文章或许自有定论。1.生命周期在移动操作系统上开发软件...2017-07-07 阅读378
-
记一次诡异的Bug修复——App自启动
1、前言在上一版本App临发版之前,QA和PM同学同时报了一个严重的Bug:App退出之后会自动重新启动,也就是用户关不了App。开发者梦寐以求的应用常驻就这么被莫名其妙的实现了!当然这是句玩笑,估计用户会直接了当卸载才是真的。我们项目里确实也有应用保活的策略,但是并不流氓,更不会无厘头的在用户主动关闭App的时候重启...2017-07-07 阅读295
-
自己动手轻松撸一个OkHttp框架
一、开源项目 OkHttp在Android、Java开发领域中,相信大家都听过或者在使用Square家大名鼎鼎的网络请求库: OkHttp https://github.com/square/okhttp ,当前多数著名的开源项目如 Fresco、Glide、 Picasso、 Retrofit都在使用OkHttp,这足以说明其质量,而且该项目仍处在...2017-07-06 阅读342
-
Android 图标自适应:用 TextView 来显示图片 & 生成自己的字体库
今天我们来介绍一种用TextView代替并显示图片,以达到App优化及图标自适应的效果。当然,我们先来看一下效果:这些真的只是TextView文本如果你看到上面这张图片,第一反映你可能认为都是用ImageView去显示的,那你就错了,这些全都是用TextView实现的(当然更不可能是给 TextView 设置了背景图)。平时我们在开发中,图片...2017-07-06 阅读319
-
Kotlin-优雅的完成登录判断及自动跳转功能
在项目开发过程中,如果有用户系统少不了登录状态的判断,通常的一种实现方式是在baseActivity中获取登陆状态,当需要时进行if else判断,这样每次需要时就进行判断一次非常的麻烦,现在我们可以用kotlin的扩展函数功能实现统一的登录判断及登录后的自动跳转。首先说一下什么是扩展函数,简单来说,扩展函数就是让一个已存...2017-07-06 阅读294
-
AdPlayBanner:功能丰富、一键式使用的图片轮播插件
AdPlayBanner是一个Android平台基于ViewPager实现的轮播图插件,主要用以自动或者手动地播放轮播图,提供了Fresco、Picasso、Glide等图片加载方式供用户使用,以及多种图片切换动画,设置轮播时间,设置数据源顺序,提供不同分页指示器等功能,实现了一键式、灵活式的控件使用方式。目前AdPlayBanner已经开源到了Github上面...2017-07-05 阅读311
-
微信小程序模板消息还能群发?无限制推送?
微信小程序模板消息还能群发?无限制推送?模版消息推送是微信小程序采用的通知形式,用户本人在小程序页面有交互行为后,可触发下发通知,通过微信聊天列表中的服务通知可快捷进入查看消息。此外,点击查看详情还能跳转到下发消息的小程序的指定页面。但是为了避免这种通知被滥用,带来不好的用户体验,小程序也对模板消息...2017-07-05 阅读338
-
记一次View.getContext()遇到的大坑
有的时候不能盲目自信,不然会踩到大坑啊,哎。。还是因为太菜了。事情的经过是这样子滴: 有一个特殊条件,需要把View的context强转为Activity。大概是这样子的:imageView.context as Activity这个时候我是比较确信这个view的context一定是Activity的,所以没有加以下判断。if (imageView.conte...2017-07-03 阅读310