android框架

android框架_5.0的AudioManager分析_013

匿名 (未验证) 提交于 2019-12-03 00:22:01
AudioManager分析 一、AudioManager类 1、frameworks/base/media/java/android/media/AudioManager.java 该类主要是用于上层应用的API接口与frameworks的逻辑交互工作,这里有很多的功能设置选项; AudioManager类位于android.Media 包中,该类提供访问控制音量和钤声模式的操作。 通过getSystemService(Context . AUDIO _SERVICE)方法获得AudioManager实例对象。 AudioManager audiomanage = (AudioManager)context.getSystemService(Context. AUDIO _SERVICE); audiomanager就是我们定义的控制系统声音的对象。 /** * AudioManager provides access to volume and ringer mode control. * <p> * Use <code>Context.getSystemService(Context.AUDIO_SERVICE)</code> to get * an instance of this class. */ public class AudioManager { private

QMUI Android框架使用探索与详细步骤4-列表框ListView的使用

匿名 (未验证) 提交于 2019-12-03 00:22:01
列表使用的最多,项目中经常用到,所以这个必须得整合到项目中。 列表控件listview的使用,可以先参考官方的demo。代码参考QDDialogFragment.java文件,布局layout参考fragment_listview.xml和simple_list_item.xml这2个文件。 经过前面几次的折腾,现在使用起来也很简单了。 1、新建一个项目:QMUI_Practise,选择空白布局。删除默认的hello world控件。添加状态栏和一个listview。activity_main.xml布局文件代码如下。注意要添加fitsSystemWindows="true"。 <?xml version="1.0" encoding="utf-8"?><!-- ~ ************************************************************* ~ 文件:activity_main.xml 模块:app 项目:QMUI_Practise ~ 当前修改时间:2018年06月01日 10:49:40 ~ 上次修改时间:2018年06月01日 10:20:21 ~ 作者:大路 ~ Copyright (c) 2018 ~ *************************************************************

RecycleView多布局的实现

匿名 (未验证) 提交于 2019-12-03 00:22:01
http://www.jianshu.com/p/f6418086a1b3 介绍了RecycleView的简单使用,并实现了RecycleView的点击事件和长按事件,本篇文章主要讲解的是RecycleView实现多布局。 现在来看下效果图如下: [ͼ1.png] 图二: ͼ2.png 图三: 图三巴纽 上图+实现了四种布局:现在来看看主布局XML: <RelativeLayout xmlns:android= "http://schemas.android.com/apk/res/android" xmlns:tools= "http://schemas.android.com/tools" android:layout_width= "match_parent" android:layout_height= "match_parent" android:paddingLeft= "@dimen/activity_horizontal_margin" android:paddingRight= "@dimen/activity_horizontal_margin" android:paddingTop= "@dimen/activity_vertical_margin" android:background= "#E0F2F1" android:paddingBottom= "

Xposed插件开发环境配置

匿名 (未验证) 提交于 2019-12-03 00:22:01
已获得root权限的手机 Xposed Installer 手机上安装Xposed Installer后打开,框架-》安装/更新-》重启 android Studio新建android项目 AndroidManifest文件中写入配置信息 <meta- data android:name = "xposeddescription" android:value = "插件描述" /> <meta- data android:name = "xposedmodule" android:value = "true" /> <meta- data android:name = "xposedminversion" android:value = "54" /> 导入XposedBridgeApi-54.jar 新建lib并放入XposedBridgeApi-54.jar 在app/build.gradle中导入 dependencies { …… //用provided的原因是Xposed Installer中包含了XposedBridgeApi,打包时不需要将jar包打入apk,否则会冲突 provided files ( 'lib/XposedBridgeApi-54.jar' ) …… } 新建插件类 public class Init implements

Android中的MVVM架构设计-实用篇(一)

匿名 (未验证) 提交于 2019-12-03 00:21:02
不能说的秘密.jpg 引言 接到了一个新的android项目,之前也一直在用mvp在写东西,可是身边的朋友都已经在用mvvm在做东西了,如果现在自己还不用mvvm写的话,那真是太尴尬了,于是到网上找了些资料,大致是知道mvvm是怎么使用了。 网上的资料往往都是先将mvc mvp mvvm做一个对比之后再进行mvvm的讲解,我这里就不要那么麻烦了,他们三者之间的对比是面试的时候需要准备的,今天我就把实用技能贴出来,供大家参考吧,有意见的话希望大家留言,共同学习~~ 使用mvvm 1、让android项目启用dataBinding 我们使用mvvm,必然会用到android为我们提供的dataBinding支持包,这个支持包早在2015年,google就为我们提供了(又尴尬了是不是,赶紧用起来吧)。 好,只需要在我们正在编写的module中的build.gradle中添加这样的脚本就好了,看截图(注意,是添加到android {} 内部) 启用dataBinding 这样我们就能够使用了,记得构建一下。 2、修改布局文件 如果想使用databinding框架,需要按照mvvm的规矩来办,而mvvm的规矩就是,需要布局文件 按照 「固定的写法」 来编写。 「固定的写法」 02.jpg ok,这就是固定写法,那么与我们以前的写法的差异是 * 最外层用 < layout > 标签嵌套

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

匿名 (未验证) 提交于 2019-12-03 00:19:01
在2018年5月9日的谷歌开发者大会(Google I/O 2018) 中提出在去年发布的广受欢迎的架构组件上,进一步改进并推出了Jetpack。Jetpack能帮助我们更专注提升应用体验,加快应用开发速度,处理类似后台任务、UI 导航以及生命周期管理之类的活动。发布的新版 Android Jetpack 组件中更新的内容包括 4 个部分:WorkManager、Paging、Navigation 以及 Slices。我们今天要说的就是Paging,在进行大数据查询的时候,Paging分页组件可以让我们从本地或者网络中通过渐进的方式、逐步的请求数据加载,在不过多增加设备负担或等待时间的情况下,让应用拥有了处理大型数据的能力,其中包括对RecycleView的支持。和往常一样,主要是想总结一下Android官方Paging Library的学习过程以及一些需要注意的地方。 详细请查看谷歌官方文档: https://developer.android.google.cn/topic/libraries/architecture/paging/ 我写这篇文章是基于Paging Library 1.0.0的版本。 当RecyclerView不断下滑时,就触发分页加载,把RecyclerView后续要使用的数据分页加载显示出来。这么说吧,当我们滑动第一页时,在还没有滑到底部的时候

Android

匿名 (未验证) 提交于 2019-12-03 00:10:02
(一)Android系统框架详解 Android采用分层的架构,分为四层,从高层到底层分为应用程序层,应用程序框架层,系统运行库层和Linux核心层 1,Android应用程序层 应用是用Java语言编写的运行在虚拟机上的程序,即图中最上层的蓝色部分,其实,Google最开始时就在Android系统中捆绑了一些核心应用,比如e-mail客户端、SMS短消息程序、日历、地图、浏览器、联系人管理程序,等等。 2,应用程序框架层 这一层即是编写Google发布的核心应用时所使用的API框架,开发人员同样可以使用这些框架来开发自己的应用,这样便简化了程序开发的架构设计,但是必须遵守其框架的开发原则,组件如下: 丰富而又可扩展的视图(Views):可以用来构建应用程序,它包括列表(lists)、网格(grids)、文本框(textboxes)、按钮(buttons), 甚至可嵌入的Web浏览器。 内容提供器(Content Providers):它可以让一个应用访问另一个应用的数据(如联系人数据库),或共享它们自己的数据 资源管理器(Resource Manager):提供非代码资源的访问,如本地字符串、图形、和布局文件(layoutfiles)。 通知管理器 (Notification Manager):应用可以在状态栏中显示自定义的提示信息。 活动管理器(Activity Manager

android studio 页面适配问题解决方案

对着背影说爱祢 提交于 2019-12-03 00:01:57
一、引言   因为Android的开源,所以厂商无需自行研发OS操作系统,由于各自厂商存在竞争,导致手机的生产存在差异,与此同时的是相继出现不同分辨率的版本手机,给广大开发者的苦不堪言痛苦,各种神奇的小板儿考验着app的兼容性,各种定制的rom不经意间就让app崩溃,光是界面上的调整就已经够你喝一壶了,为了解决这一问题,这段时间,无意间,在github上找到了一个开源框架,我在这里做了一些整理,经过测试,目前这个框架,兼容sdk最低到11,最高到23,其他的范围还没有测试,还有待测试。 二、说明   由于Google开始支持百分比的方式布局了,所以今后可能越来越流行这种布局适配,我把核心的东西抽出,做了一个整理。       三、集成步骤: 1.res/value/values.xml <?xml version="1.0" encoding="utf-8"?> < resources > < declare-styleable name = "PercentLayout_Layout" > < attr name = "layout_widthPercent" format = "fraction" /> < attr name = "layout_heightPercent" format = "fraction" /> < attr name = "layout

Android框架式编程之Lifecycle

匿名 (未验证) 提交于 2019-12-02 23:43:01
https://developer.android.com/topic/libraries/architecture/lifecycle 。 一、为什么要使用Lifecycle? Activity 和 Fragment 是有声明周期的,开发时我们的很多操作需要写在声明周期的方法中,比如,下载、文件操作等。这样很多情况下会导致,我们在 Activity中 的声明周期方法中写越来越多的代码,从而使得 Activity 或者 Fragment 越来越臃肿,代码维护越来越困难。这时我们使用Lifecycle就可以很好的解决这类问题。 Lifecycle代码简洁,我们可以通过实现LifecycleObserver 接口来监听声明周期,然后我们在Activity和Fragment中去注册监听。 Lifecycle 的原理图如下: 二、Lifecycle 的使用说明 2.1 几个重要的类和接口 Lifecycle : Lifecycle是一个持有组件生命周期状态(如Activity或Fragment)的信息的类,并允许其他对象观察此状态。 Event State LifecycleOwner LifecycleObserver (重要)Lifecycle观察者:实现该接口的类,通过注解的方式,可以通过被LifecycleOwner类的addObserver(LifecycleObserver o

github开源项目收藏

匿名 (未验证) 提交于 2019-12-02 23:43:01
版权声明:署名,允许他人基于本文进行创作,且必须基于与原先许可协议相同的许可协议分发本文 ( Creative Commons ) 算法与数据结构 算法可视化工具 https://github.com/algorithm-visualizer/algorithm-visualizer Java Web OJ开源项目 https://github.com/QingdaoU/OnlineJudge Android MVP开发模式官方示例 https://github.com/android10/Android-CleanArchitecture MVP开发模式示例 https://github.com/sockeqwe/mosby MVPSocket(Demo) https://github.com/GavinAndre/MVPSocket okhttp https://github.com/square/okhttp EventBus https://github.com/greenrobot/EventBus 一款android自动生成表格框架 https://github.com/huangyanbin/smartTable Android 检索手机目录方式的文件选择器 https://github.com/leonHua/LFilePicker AndroidDevTools