android框架

公共技术点之 Android 动画基础

让人想犯罪 __ 提交于 2019-12-03 00:37:54
一 传统 View 动画(Tween/Frame) 1.1 Tween 动画 主要有 4 中:缩放、平移、渐变、旋转 文件位置: res/anim/filename.xml 编译资源的数据类型:an Animation 资源引用: Java: R.anim.filename XML: @[package:]anim/filename <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@[package:]anim/interpolator_resource" android:shareInterpolator=["true" | "false"] > <alpha android:fromAlpha="float" android:toAlpha="float" /> <scale android:fromXScale="float" android:toXScale="float" android:fromYScale="float" android:toYScale="float" android:pivotX="float" android:pivotY="float" />

基于Android官方Paging Library的RecyclerView分页加载框架

匿名 (未验证) 提交于 2019-12-03 00:37:01
基于Android官方Paging Library的RecyclerView分页加载框架 我之前写了一篇RecyclerView分页加载机制的文章,是基于Android官方的AsyncListUtil实现的,详情见附录文章1。现在再介绍一种RecyclerView分页加载框架:Android Paging Library。 Android Paging Library是Android官方support-v7支持包中专门做的分页框架,详细文档见谷歌官方文档附录2页面。我写这篇文章时候Paging Library的版本是1.0.0-alpha3。 使用Android Paging Library首先需要在gradle添加引用: [plain] view plain copy print ? implementation 'android.arch.paging:runtime:1.0.0-alpha3' 下面我写示例代码做一个简单的演示: [java] view plain copy print ? package import import import import import import import import import import import import import import import import import import import

Android代码规范

匿名 (未验证) 提交于 2019-12-03 00:34:01
代码规范目的:易读可维护 1:命名: 大驼峰(类(组件,接口,工具类)) 小驼峰(方法,变量) 小写(包) 大写(常量,枚举) 2:尽量在每一个类中加入TAG,调试用途,若用框架,就不用,比如Logger private static final String TAG = "DieselPayActivity" ; Log .i (TAG,title) ; FormatStrategy formatStrategy = PrettyFormatStrategy .newBuilder () .showThreadInfo (false) .methodCount ( 2 ) .methodOffset ( 0 ) .tag ( "AILE_LOG" ) .build () ; Logger .addLogAdapter (new AndroidLogAdapter(formatStrategy)) ; Logger .d (title) ; Logger .json (result) ; 3:使用Intent传递数据,声明Key时,定义常量,是常量的肯定定义常量 public static final String MERCHANT_NAME = "上海车高电子商务有限公司" ; public static final String MERCHANT_NO =

2018 Google IO

匿名 (未验证) 提交于 2019-12-03 00:32:02
原文 前言 美国当地时间5月8日,2018年 Google I/O开发者大会在美国加州山景城拉开帷幕。 这是全球5月份最盛名的一次开发者大会,即使你不是一名专业的技术人员,你也可以从中获取不少前沿性的内容――当然,它更是程序开发者们的特殊节日,在I/O大会开始之前,相关网站就已经浓墨重彩开始了宣传(作为Android开发者,笔者惊奇地发现Android Developers官方网站也迎来了全新的改变)。 在本届大会上,AI(人工智能)成为贯穿全场的主题。谷歌不仅发布了新一代为机器学习定制的芯片TPU(张量处理器)、结合了AI技术的 Android P ,还升级了不少AI应用 ――不难发现,Google 把开发重心更多放到了AI上面,除此之外,移动端技术和 前端技术 的发展也在Google的重点关注之中,这之后,谷歌还谈到了在自动驾驶领域和TPU芯片研发的新进展。 作为一个Android开发者,我们应该做到的是关注最新的技术动态和风向,我尝试花了一些时间总结了本次大会的 干货列表,并简单做了一下总结,希望对大家能有所帮助。 本文的目录如下: AI的演示――Google Assistant Android P Android Jetpack Kotlin的上位 Android Wear Android Things ARCore Instant app 总结 一.AI的演示―

前端流行框架技术选型大纲-PC端、移动端、微信端

匿名 (未验证) 提交于 2019-12-03 00:30:01
平台定位:PC网站、H5网站、微信公众号、微信小程序、iOS APP、Android APP; Ionic React(For React Native) React Native Weex 原生iOS 原生Android PWA Xamarin 微信公众号 微信小程序 公司 Google+Apache Facebook Facebook Ali(https://weex.apache.org/) Apple Google Google(https://developers.google.com/web/progressive-web-apps/ ) Microsoft(https://www.xamarin.com/) 腾讯 腾讯 核心技术 ionic+angular+cordova+html+css react+redux+html+css+jsx react+redux+react native+html+css+jsx Vue.js+Rax+Vuex+Vue-router Objective-C/Swift Java/Kotlin+Android Javascript+service worker+app shell+offline+native api C#+.Net Core+Razor angular/react/vue/js均可,需要申请公众号 angular

android 改机,抹机工具开发 二

匿名 (未验证) 提交于 2019-12-03 00:30:01
上篇贴出了工具界面,此篇主要介绍开发的总体结构。 一 :先贴出项目结构图,以便有个大概印象。 xposed 模块的hook 函数,通过这里的hook函数实现改机。 xpose目录: 主要是 实现 IXposedHookLoadPackage接口 DevicesActivity.java :设备信息的显示与修改页面。 Telephone Wifi 点击进入Xposed installer: 框架, 。 public class XposedMod implements IXposedHookLoadPackage { @Override public void handleLoadPackage(LoadPackageParam lpparam) throws Throwable { 覆写handleLoadPackage方法,xposed的该方法在任何应用启动时都会被调用,故可以进入任何应用程序的进程,对某个特定的应用,启用相应的hook函数, 如果对某个应用不需要hook,直接从 handleLoadPackage返回。 4,指定模块的入口 xposed的入口,一个项目中可以 有多个继承IXposedHookLoadPackage的子类,因此需要指定 xposed的入口。方法如下: xposed_init文件内容 如下: com.wutong.var.xpose

android /system/lib/ so库解析

匿名 (未验证) 提交于 2019-12-03 00:27:02
> android /system/lib/ so库解析 - https://blog.csdn.net/qidabing/article/details/51837163 - Linux下的*.so是系统的动态库,类似于win下面的*.dll,一般是由C/C++编译成的动态库,上层的Java程序通过JNI调用。 动态库相对静态库的优点是,1.更加的节省资源;2.更方便的程序部署、更新和发布;有些So在不同的SDK可能会没有了。 1、out_cm11中.so文件解析 out_cm11\target\product\aries\system\lib |-- drm (Digital Rights Management 数字版权管理) | |-- libfwdlockengine.so (?Fwdlockengine(OMA-v1的Forward Lock(禁止将文件移动到手机设备以外的设备,即转发锁定))) |-- egl (EGL是OpenGL ES和底层Native平台视图系统之间的接口) | |-- egl.cfg (图形渲染配置文件egl.cfg) | |-- eglsubAndroid.so (?) | |-- libEGL_adreno.so (?adreno是高通的GPU处理器) | |-- libGLES_android.so (software OpenGL ES

Vuforia图片识别(Android)

匿名 (未验证) 提交于 2019-12-03 00:27:02
最近公司有AR开发的需求,需要使用手机扫描图片显示出不同的模型,同时模型要有旋转、缩放的功能,提供的框架是Vuforia。那么经过一个星期的研究,也算是完成了任务,现在总结出开发中遇到的一些坑,具体源码放在Gitee。 项目地址 https://gitee.com/GrapeM/vuforia_image_recognition 使用场景:根据多个模型图片,手机相机扫描后出现对应的模型,需要快速加载出模型,使用的模型都为OBJ模型。 使用技术:Java(不需要JNI) 主要知识点: - 替换识别图片 - 序列化模型OBJ文件 首先说一下遇到的坑,Vuforia原始的加载模型方法就是一个坑,研究过一段时间的人大概都清楚。它的操作流程大概是这样的: 1. 将一个模型文件(OBJ)转化为.h文件 2. 将.h中的法线、顶点、纹理三个坐标点分别放在三个txt 3. 读取解析txt显示模型。 这一系列让人窒息的操作不仅仅是麻烦,而且解析txt的再显示模型的速度是慢的不得了。所以研究了两天,不得不从新寻找其他方法代替。 开始之前,先准备好一些工作。申请key,替换识别的图片。 地址: https://developer.vuforia.com/ 注册账号后点击: Develop ― License Manager ― Get Development Key

Android 技术栈

匿名 (未验证) 提交于 2019-12-03 00:22:01
开发语言 Java 开发工具 Android Studio 自动化编译 gradle 现有的Android 技术栈组织架构 基础层 基础框架层专注于技术领域实现,提供app公有特性,避免重复制造轮子。注重性能和稳定性。需要不断稳固提高健壮性。 网络通信 底层 选型的是成熟框架okhttp, 上层 选用Google推荐的Glide图片框架,轻便灵活。 需要优化的地方 网络框架上层考虑选用 Rrtrofit框架 ,是将REST API转换为Java接口的一个开源函数库,基于注解使代码变得更简洁,需要服务器遵循REST规范。 组件层 组件层会针对行业领域的实现、业务类型的实现进行不同的选型,下面列举的是最常用的可固定选型的基础组件。 其他小插件依赖库例如:图表、轮播图、侧滑、图片缩放等。 文章来源: Android 技术栈

QMUI Android框架之QMUIGroupListSectionHeaderFooterView源码学习分析

匿名 (未验证) 提交于 2019-12-03 00:22:01
QMUI Android框架的QMUIGroupListView做设置中心,效果还是挺不错的。对我等专注于程序功能,而对UI设计不擅长的人,确实是一大福利。不过QMUI框架的文档样例实在是太少,哪怕是最有些基本的应用,都没有样例,比如编辑框。被逼无赖之下,只能去看源码。 官方QMUIGroupListView做的效果如下图。 按照上面的效果图,把相应的类进行拆分,那么QMUIGroupListView的类结构图,如下图所示。 每个QMUIGroupListView包含多个QMUIGroupListView.Section,每个Section包含一个QMUIGroupListSectionHeaderFooterView头部、一个QMUIGroupListSectionHeaderFooterView尾部和多个QMUICommonListItemView列表项。头部和尾部是同一个类。 头部看起来最简单,那么就先从头部开始看起吧。官方对QMUIGroupListSectionHeaderFooterView的介绍也是少的可怜,仅仅只有一句话。说作为Section的头部或尾部,也可以单独使用。至于单独如何使用,就没有讲,也没有案例了。 既然如此,那我们只好自己去看源码吧。QMUIGroupListSectionHeaderFooterView类的路径结构如图所示