Android开发( 右侧选择分类 )
android01

Android产品研发(二十)-- 代码Review

上一篇文章中我们讲解了如何在android studio中进行单元测试。实际开发过程中有一些功能性的需求,比如测试工具类,测试数据存储等测试工作,如果还是通过重复执行apk文件的编译,安装,运行等会浪费大量的时间,而这些功能与android的开发环境无太大的关系,我们完全可以使用单元测试来执行。android studio中默认是支持进行单元测试的,并提供了获取Context等系统对象的API,我
555 人浏览
android01

Android产品研发(四)-- 较少Apk大小

随着移动技术的深入发展,各种炫酷效果的更新,在我们追求UI与UE的同时一个不如忽视的问题逐渐暴露出来,那就是apk文件越来越大,可能有的童鞋会说现在都是wifi环境,apk文件增大几M不是什么大不了的问题,这其实也是有一定道理的,但是作为开发人员的我们这绝不是我们认为可以忽略这个问题的理由。优化Apk大小也是优化我们App体验的一个重要方面,虽然可能它不是那么的重要。那么到底是那些原因让我们的Ap
553 人浏览
androidproject

Transferee 帮助你完成从缩略图到原图的无缝过渡转变

transferee 可以帮助你完成从缩略图到原图的无缝过渡转变,功能体系仿照并涵盖 ios 版本的 QQ、微信朋友圈、新浪微博的图片浏览功能。transferee 支持两种模式:只有原图,就是说九宫格列表中的图片和全屏显示的大图其实来源于一张图片。详见NoThumActivity既有原图,又有缩略图,例如我司使用了阿里云的图片裁剪功能提供了缩略图来源,在列表页使用阿里云裁剪后的缩略图,优化列表数
552 人浏览
androidproject

高仿网易新闻新版频道管理功能 TopGrid

TopGrid高仿网易新闻新版频道管理功能描述该项目是仿网易新闻客户端的频道管理功能,实现ITEM的拖拽,添加和删除操作。使用可拖拽的GridView:<com.whatshappen.topgrid.view.DragGrid android:id="@+id/userGridView" android:layout_width="fill_parent&
549 人浏览
android01

Android产品研发(十)-- 不使用静态变量保存数据

上一篇文章中我们讲解了Android中的几种常见网络协议:xml,json,protobuf等,以及各自的优缺点,一般而言主要我们的App涉及到了网络传输都会有这方面的内容,具体可根据项目的需求确定各自的网络传输协议。这里可参考 android产品研发(九)-->App网络传输协议而本文讲解的其实并不是一个技术方面,而是一个android产品研发过程中的技巧:尽量不使用静态变量保存核心数据。
546 人浏览
androidproject

Android RadarView之自定义雷达扫描动画效果

RadarViewRadarView for Android 是一个雷达扫描动画后,然后展示得分效果的控件。Gif 展示引入Maven:<dependency> <groupId>com.king.view</groupId> <artifactId>radarview</artifactId> <version>1.0
546 人浏览
android01

Android源码解析(十二)-- Android系统启动并解析Manifest的流程

最近有同学问我关于Manifest何时被系统解析的问题,正好也分析到这一块了,索性这一章就讲解一下android系统何时解析Manifest吧,这里的Manifest指的是android安装文件apk中的androidManifest.xml文件是何时被解析的。大家应该都知道,Android系统启动之后,我们就可以在一个应用中打开另一个从未打开过的应用,或者是在一个应用中发送广播,如果另外一个应用
544 人浏览
android01

Android源码解析(六)-- Android之Log日志

首先说点题外话,对于想学android framework源码的同学,其实可以在github中fork一份,具体地址:platform_frameworks_base这里面基本都是android framework层的源码了。而且最近发现了一个比较不错的github插件:OctoTree,它 是一个浏览器插件,它可以让你在Github 看代码时,左边栏会出现一个树状结构,就像我们在IDE 一样。当
543 人浏览
androidproject

GiftSurfaceView 直播间送礼物动画

GiftSurfaceView 最初出自于2014年开发HalloStar项目时所写,主要用于HalloStar项目直播间的送礼物动画。现在想来,那夕阳下的奔跑,是我逝去的青春。因高仿全民TV项目时想起,所以抽空整理了下,以此记录。Gif展示引入Maven:<dependency> <groupId>com.king.view</groupId> <a
541 人浏览
android

Android 解决: Failed to resolve: com.android.support:appcompat-v7:28.+ 错误

今天,简单讲讲Android studio编译报错:Failed to resolve: com.android.support:appcompat-v7:28.+的问题。这个问题其实之前遇到过,今天又遇到了。所以记录一下。总的来说,就是Android studio的SDK工具版本低于工程需要的SDK工具版本,SDK Build-Tools与工程所需的不一致。具体讲解如下:具体解决方案:1.既然是
540 人浏览
cnbzlj

android 使用signingConfigs进行打包

今天,简单讲讲如何使用android studio指定证书打包。我们使用Android Studio 运行我们的app,无非两种模式:debug和release模式。debug模式debug模式使用一个默认的debug.keystore进行签名。这个默认签名(keystore)是不需要密码的,它的默认位置在C:\Users\<用户名>\.Android\debug.keystore,如
540 人浏览
android01

Android源码解析之(四)-- Android之HandlerThread

HandlerThread是个什么东西?查看类的定义时有这样一段话:Handyclassforstartinganewthreadthathasalooper.Theloopercanthenbeusedtocreatehandlerclasses.Notethatstart()muststillbecalled.意思就是说:这个类的作用是创建一个包含looper的线程。那么我们在什么时候需要用到
536 人浏览
androidproject

ArrowDrawable,纯Paint实现的一个射箭效果,可用作Loading动画

项目地址:https://github.com/wuyr/ArrowDrawable博客详情:https://blog.csdn.net/u011387817/article/details/94607919使用方式:添加依赖:● 单独使用Drawableimplementation'com.wuyr:arrowdrawable:1.0.1'● 作为刷新Header (需配合Sma
536 人浏览
androidproject

Android 动画各种实现总结分享 AndroidAnimationExercise

AndroidAnimationExercise这是一个关于Android中各种View的集合,里面包含自己日常开发和博客总结中的代码。 主要内容是Android动画、Android自定义View 相关的知识,包含一些常见应用中动画效果的模仿实例. 随着时间的推移,里面积累的很多代码,大致用5个Fragment 做了分类:Apk 下载体验扫一扫体验打开ImitateFragment (模仿三方应用
536 人浏览
android00

Android中xml文件中空格转义符

在Android开发中经常遇到空格转义符&#160;
536 人浏览
android01

Android源码解析(二十六)-- Android 截屏事件流程

今天这篇文章我们主要讲一下Android系统中的截屏事件处理流程。用过android系统手机的同学应该都知道,一般的android手机按下音量减少键和电源按键就会触发截屏事件(国内定制机做个修改的这里就不做考虑了)。那么这里的截屏事件是如何触发的呢?触发之后android系统是如何实现截屏操作的呢?带着这两个问题,开始我们的源码阅读流程。我们知道这里的截屏事件是通过我们的按键操作触发的,所以这里就
532 人浏览
android00

Android 实战-版本更新(okhttp3、service、notification)

前言整理功能,把这块拿出来单独做个demo,好和大家分享交流一下。版本更新这个功能一般 app 都有实现,而用户获取新版本一般来源有两种:一种是各种应用市场的新版本提醒一种是打开app时拉取版本信息(还要一种推送形式,热修复或打补丁包时用得多点)这两区别就在于,市场的不能强制更新、不够及时、粘度低、单调。摘要下面介绍这个章节,你将会学习或复习到一些技术:- dialog 实现 key 的重写,在弹
532 人浏览
cheng

Android Dialog点击返回键不消失

在开发过程中我们经常需要各种对话框,使用最多的应该就是Dialog;面对不同的需求,可能需要不同的效果。1,点击返回键,不关闭Dialog// 默认为 true,为 false 时表示不可取消 mDialog.setCancelable(false);
528 人浏览
androidproject

Github 在Dribbble上找到的一个清单效果 RippleCheckBox

简洁,舒服,波纹动画,勾选动画,高度可控的波纹CheckBox设计参考:dribbbleScreenshot下载案例Apk使用该控件的开源项目:玩清单Dependenciesimplementation'com.github.xujiaji:ripple-checkbox:0.0.2'Usepx: 值为像素单位;0x: 值为颜色,如黑色0xFF000000(0-360): 值的范围
527 人浏览
android01

Android产品研发(二十五)-- MVC、MVP、MVVM开发模式

本文我们将讲解Android开发中常常涉及到的MVC/MVP/MVVM等模式的基本概念。许多童鞋对Android开发中涉及到的MVC、MVP、MVVM这三种模式不是太清楚,我认为无论是MVC、MVP亦或者是MVVM都是一种代码组织方式,通过这种代码组织方式能够让代码更有层次感,各个层次主要负责各自的工作,这样降低了整个项目的代码逻辑耦合度与可读性。下面对MVC、MVP、MVVM等设计模式逐一的做一
527 人浏览