Android
介绍谷歌Android操作系统APP开发知识点
流星雨在线
走最远的路,看最美的风景
展开
-
连连看游戏思维拓展(java版)
文章目录一、前言二、思路分析2.1,相同的卡片可以消除2.2,两张卡片间连线的拐弯不能超过两个1)两个节点是否可以直接相连2)如果否,则考虑能否通过2条直线相连3)如果否,则考虑3条直线相连2.2,用户操作和消除要有较为友好的动画4)否则就是不可连接2.4,游戏最后要有解1)当出现所有图案均无法连时,游戏会自动洗牌。2)使用拉斯维加斯算法+回溯法初始化有解的棋盘3)内置多种怎么操作都可解的棋盘4)游戏体验上给玩家新增道具消除5)有规律的初始化棋盘三、写在最后的话一、前言连连看规则要求1,相同的卡片可原创 2020-10-08 17:35:50 · 1017 阅读 · 0 评论 -
AOP技术实现无侵入式解决按钮重复点击
一、前言通常android系统需要做一些统一的处理,最简单的选择是在BaseActivity中,但是由于BaseActivity的1,强侵入性(改变原有代码结构)2,java的硬编码特性(在预编译阶段需要存在才能处理,但大部分源码sdk已经写死了不可能单独生成自己的一个sdk)这样就使得AOP特别的火爆,这里以入门基础hook为知识点,以最简单的防抖处理为例实战一下。java常用编...原创 2020-03-01 19:05:54 · 1247 阅读 · 0 评论 -
android转场动画,让你的APP瞬间绚丽起来
友好的交互体验能够吸引眼球,android API 21(5.0)后系统内置了Activity之间的切换动画,不仅可以让用户看起来舒服,而且实现起来也特别简单。一、通过overridePendingTransition实现转场动画这种实现方式应该算最简单的,可以实现包括缩放、平移、alpha值(透明度)变化的转场动画,并且定制性特别强,项目中比较推荐使用这个。1.1、页面进入实现方式...原创 2020-02-22 21:13:42 · 9067 阅读 · 0 评论 -
android字符串处理
在安卓开发中我们需要利用TextView实现各种各样的文字展示效果,这里记录常用的几种利用TextView对文字的处理。效果图:一、利用TextView的ellipsize属性实现跑马灯轮播效果<TextView android:layout_width="match_parent" android:layout_height="wr...原创 2020-02-18 16:49:12 · 708 阅读 · 0 评论 -
android开发模式之组件化开发
一、简介基于模块化。有一个主工程(壳工程)和多个组件(module)。开发时每个组件都是application,打包发布时每个组件都作为library。关于模块化:模块化是AndroidStudio中引进的概念,主要分为application和library两种格式。将工程中共享部分和各个业务模块,拆分成多个module,实现代码和业务上的解耦。是组件化的基础。二、存在的意义将...原创 2020-02-10 20:05:08 · 445 阅读 · 0 评论 -
android开发模式之插件化开发
一、简介插件化开发是将整个app拆分成很多模块,这些模块包括一个宿主和多个插件,每个模块都是一个apk(组件化的每个模块是个lib),最终打包的时候将宿主apk和插件apk分开或者联合打包。由宿主APP去加载以及运行插件APP。二、存在的意义宿主和插件分开编译并发开发动态更新插件按需下载模块解除单个dex函数不能超过65535的限制处境:开放出来的插件化开发框架比较多,他...原创 2020-02-09 20:05:11 · 1865 阅读 · 0 评论 -
xml布局之shape绘制控件圆角,背景,边框等属性
xml中使用shape可以绘制多种控件样式,相比于让UI切图要方便很多:a,可以缩小app体积;b,代码控制各种状态的变换更为灵活,且拓展性更好;c,更为精确,图片的话还可能存在边边角角的地方有锯齿存在等情况一、圆角背景<?xml version="1.0" encoding="UTF-8"?><shape xmlns:android="http:/...原创 2018-01-07 15:12:11 · 3014 阅读 · 0 评论 -
环信IM即时通讯的简单集成
这里只是做一个简单的记录1,登录环信官网https://www.easemob.com/product/im,申请账号并新建应用2,在官网上选择下载->及时通讯云->AndroidSDK->SDK+demo源码进行sdk的下载,然后将SDK中的easeui作为项目module集成到自己的项目中去3,然后在Mainfest中配置权限<uses-permission andro...原创 2018-05-30 22:12:22 · 2052 阅读 · 0 评论 -
在Android Studio中使用JUNIT测试
一、在需要进行Jnit测试的Module的Gradle中引入测试框架testImplementation 'junit:junit:4.12'androidTestImplementation 'com.android.support.test:runner:1.0.2'androidTestImplementation 'com.android.support.test.espress...原创 2018-09-17 09:19:21 · 951 阅读 · 0 评论 -
AndroidStudio的相关配置与快捷键
1,AndroidStudio清除无用的资源选择Analyze=>Run Inspection by Name...输入unused resources当检查出无用资源后,可以在无用资源上右键,然后会出现“Apply Fix Android Lint Quick Fixes” 的选项,点击它可以直接删除所有无用的资源,非常方便。2,AndroidStudio格式化...原创 2018-09-17 14:23:30 · 813 阅读 · 0 评论 -
Android使用沉浸式状态栏
Android使用沉浸式状态栏为什么使用?我们App里面目前都没有做沉浸式状态栏,会导致状态栏呈黑色条状,而且下面这个的黑色条状与App红色主界面有很明显的区别。这样在一定程度上牺牲了视觉高度,界面面积变小。 可以对照比较这三张图代码怎么写?对需要使用的Activity调用fullScreen(this,false)即可,通常可以写到BasePage里面。/**...原创 2018-09-13 22:35:50 · 6387 阅读 · 0 评论 -
android原生开发视频播放
一、在线MP4视频播放地址http://vjs.zencdn.net/v/oceans.mp4 http://ohjdda8lm.bkt.clouddn.com/course/sample1.mp4 http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4 http://kscdn.miaopai.com/stream/ed5HCfnhovu3t...原创 2018-10-11 15:22:42 · 693 阅读 · 0 评论 -
侧滑菜单SlidingMenu与抽屉式菜单DrawerLayout
在实际项目开发中经常会使用到侧滑页面的操作,但对技术而言常用的开发api框架有SlidingMenu与DrawerLayoutSlidingMenu与DrawerLayout的对比 名称 Menu层的UI位于 是否有联动效果 是否有蒙版 代码编写的耦合性 SlidingMenu 滑动菜单 Content的上面 否 否 低 ...原创 2018-09-22 02:46:43 · 1022 阅读 · 0 评论 -
关于AndroidStudio
一、在AndroidStudio更新中Canary Channel、 Dev Channel、 Beta Channel、 Stable Channel的区别点击Updates便可以选择更新的版本,我这里做过更改,默认的是stable Channel,那么他们之前有什么区别?1,Canary Channel(预览版),通常建议结合beta或者stable一同使用。 2,Dev Cha...原创 2018-09-23 02:29:32 · 360 阅读 · 0 评论 -
android购物车逻辑的多种实现
购物车逻辑,对实际开发中简单而言,主要细节(当然难度谈不上)在于处理逻辑:A,点击购物结算时的全选触发所有shop及其goods的全选与数据处理;B,同时,点击shop全选勾选其goods的全选与数据处理;C,反过来,点击对应店铺里的goods,如果全部勾选了该店铺所有goods触发shop的勾选。同时购物车里所有的goods都勾选了,则由goods或者shop触发购物车的全选及数据处原创 2018-01-06 20:35:34 · 4494 阅读 · 2 评论 -
app从主界面后退到桌面的几种处理方法
1,重写disatchKeyEvent(KeyEvent event)方法,使用路由跳转到桌面@Override public boolean dispatchKeyEvent(KeyEvent event) { if (event.getKeyCode() == KeyEvent.KEYCODE_BACK) { Intent intent =原创 2017-12-28 18:01:13 · 5093 阅读 · 0 评论 -
APP用户登录状态保持
APP用户登录状态保持,随笔原创 2017-07-12 17:23:56 · 1280 阅读 · 0 评论 -
Android开发技术框架和编码规范
Android开发技术框架和编码规范 2017年11月23日 目录 第一章 绪论.......................................................原创 2017-12-20 22:38:40 · 618 阅读 · 0 评论 -
阿里HotFix热修复的简单使用
阿里HotFix热修复的简单使用一,环境配置1.1,app目录下依赖远程仓库repositories { maven { url "http://maven.aliyun.com/nexus/content/repositories/releases" } flatDir { dirs 'libs' }}1.2,原创 2017-12-20 22:53:57 · 391 阅读 · 0 评论 -
android scheme链接打开本地应用
android scheme链接打开本地应用一、提供scheme供别人打开自己的应用1.1,manifest中配置 1.2原创 2017-12-21 12:49:08 · 875 阅读 · 0 评论 -
XRecyclerView的简单使用与图片拉动字体缩放效果的实现
一、XRecyclerView的简单使用1,依赖第三方implementation project(':xrecyclerview')与xml布局中的引入;2,设置布局管理器 //设置布局管理器 LinearLayoutManager layoutManager = new LinearLayoutManager(this); layoutManager.setOrientat原创 2017-12-21 23:18:43 · 862 阅读 · 2 评论 -
SmartRecycleView的使用
一、优势:1.1,提供上拉刷新与下拉加载的封装;1.2,提供Head布局;1.3,提供一个SmartRecycleView多种布局、多种Grid布局、Grid不规则布局。二、SmartRecycleView的使用2.1,引入SmartRecycleView,可选择依赖第三方或者配置远程仓库Gradle Dependency Add this in your root原创 2017-12-22 13:00:44 · 1426 阅读 · 0 评论 -
Databinding的使用(自定义控件的全局注入、布局绑定)
一、Databinding使用的优势1.1,实现xml的绑定,去除id的绑定操作;1.2,将自定义控件很方便的全局注入xml,比如xml中的head。并实现对应逻辑的统一注入,比如点击返回销毁当前页面;1.3,另外提供全局点击事件的单点操作,防止过快点击产生多次打开同一个页面的情况产生。二、使用方法2.1,在需要用的module中配置 android { ......原创 2017-12-22 18:50:57 · 8437 阅读 · 4 评论 -
Retrofit+RXJava+MVP的框架搭建
一、框架优点1.1,Retrofit封装更彻底,通过注解的方式调用1.2,RXJava订阅者模式的实现让组件内通信更方便1.3,MVP的开发模式减少耦合,便于项目各个模块的分离,应付产品需求的调整二、Retrofit的使用(以请求并解析https://api.douban.com/v2/book/search?q=%E9%87%91%E7%93%B6%E6%A2%85&tag=原创 2017-12-23 17:32:59 · 364 阅读 · 0 评论 -
android线程间通信的四种实现方式
1,通过Handler机制.private void one() { handler=new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg);原创 2017-12-25 15:36:11 · 41404 阅读 · 8 评论 -
ExpandableListView的简单使用
1,xml中引入布局ExpandableListView<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" a原创 2017-12-26 10:42:10 · 228 阅读 · 0 评论 -
解析android多语言与自定义字体
一、android多语言这里以汉语 英文 印尼文为例记录一下实现流程1.1,value文件夹下添加不同语言的String.xml文件,分别是values默认 多语言例子 中文 英文 印尼文 这是内容显示区 选择一个语言values-en英文 mulitiLanguage Chinese English原创 2018-01-02 16:33:28 · 2019 阅读 · 0 评论 -
WebView的常见使用
一、WebView的简单使用1,xml中引入继承自WebView的自定义控件,manifest中配置INTERNET权限2,调用WebView的loadUrl()方法加载资源,以网页播放优酷视频举例,详细代码如下:public class MainActivity extends AppCompatActivity { private WebView webView;...原创 2017-12-28 15:12:39 · 223 阅读 · 0 评论 -
AIDL实现跨进程通信
前言:这里以一个app的进程调用另一个app进程的service举例,较为粗略的说明aidl的用法,详细部分放后面补充一、在服务端中1.1,首先在服务端进程中,我们需要定义一个aidl接口。new->aidl->aidl file,然后声明三个抽象方法void bofangMusic();void zantingMusic();void tingzhiMusic();1.2原创 2017-12-28 17:36:49 · 298 阅读 · 0 评论 -
史上最通俗易懂的接口回调
史上最通俗易懂的接口回调原创 2017-06-28 21:29:09 · 1974 阅读 · 0 评论