应用
淡定的人O
淡定的人
展开
-
属性动画,插值器,估值器
一,引入属性动画早期Android只有补间动画和帧动画,为了满足各种各样的动画效果,Android推出了属性动画首先说明一下补间动画和帧动画帧动画帧动画,我们从字面意思来理解,帧:就是影像动画中最小单位的单幅影像画面,相当于电影胶片上的每一格镜头。 一帧就是一副静止的画面,连续的帧就形成动画,如电视图象等。简单点说就是类似幻灯片播放的那种效果,因此帧动画的本质就是将一张张的图片,通过代码对这些图片进行连续的活动(这样就形成了动画)补间动画即Tween动画或View动画, 通过对View的内容进行原创 2020-12-05 20:28:22 · 299 阅读 · 0 评论 -
android studio开发系统应用签名处理
问题来源做系统应用开发,需要配置系统的签名,才能让应用具有系统权限。比如当我们把SystemUI,Setting,Launcher导入android studio编译apk后,编译出来的 apk不是系统签名,是没有办法安装到手机上的。这个时候我们需要对apk进行系统签名。签名方式有两种,一,直接用编译的signapk.jar文件签名。二,用keystore签名一,源码签名在编译android...原创 2020-02-23 21:40:37 · 2480 阅读 · 1 评论 -
自定义VerticalTextView
最近做需求,网上找不到链接,于是自己做一个简陋版的VerticalTextViewGitHub下载链接git@github.com:13540634851/PreferenceDemo.git效果图注意:由于是自定义View,TextView’的属性在这里不管用只有3个方法可用设置显示的字符串,public void setText(String text) ;设置对齐方式...原创 2019-10-26 22:09:16 · 1058 阅读 · 0 评论 -
java反射
反射 java反射获取类 class c = Class.forName("com.example.TestClass");获取类权限 ++public++ ++private++ ++static++System.out.print(Modifier.toString(c.getModifiers()));获取类名 System.out.print(c.getSimpleNa原创 2016-11-17 22:23:53 · 239 阅读 · 0 评论 -
《SystemUI》通知栏小图标加载
SysteUI(MTK SystemUI,Android O1)的小图标加载SystemUI对通知栏小图标排序和加载主要改下面两个配置:这个值定义在config.xml <!-- Tiles native to System UI. Order should match "quick_settings_tiles_default" --> &原创 2018-11-30 16:54:59 · 1214 阅读 · 0 评论 -
《SystemUI》修改SystemUI锁屏界面时间格式
要求:修改SystemUI锁屏界面时间格式Android P 上Sysyemui锁屏界面上的日期显示不在DateView处理了,使用KeyguardSliceProvider来处理,继承Contentprovide之前Android O修改日期直接是在SystemUI/src/com/android/systemui/statusbar/policy/DateView.java pu...原创 2018-11-30 16:35:07 · 2567 阅读 · 2 评论 -
Android switch控件触发onCheckedChanged引起的bug
问题Switch在调用非手动触发,其他地方setchecked的时候会触发onCheckedChanged,有时候不需要触发这个监听,仅仅是改变check状态;利用buttonView.isPressed()只会在手动的时候才会为true @Override public void onCheckedChanged(CompoundButton buttonView, boolea...原创 2019-05-30 13:40:35 · 7648 阅读 · 1 评论 -
SystemUI锁屏流程
锁屏UI界面SystemUI启动的时候启动各个SERVICE,这些Service不是四大组件的service,这个SERVICE继承SystemUI,实现了start()和onBootComplete方法.其中StatusBar加载了SystemUI几乎全部的界面,其中包括锁屏界面,其中Bouncer是安全锁屏界面,实现类是KeyguardBouncer锁屏加载锁屏加载KeyguardB...原创 2019-07-09 11:44:16 · 2035 阅读 · 0 评论 -
Android O 新特性 系统主题
一.系统主题介绍android P都已经出来好久了,今天在使用Android P过程中发现在Dislpay下面有一个主题设置(Device theme)如下所示可以看出一个有3个选项,通过使用后发现,他运行用户设置手机主题,跟app主题不一样,这里的主题设置可以供系统以及所有应用查询.系统主题一共有暗和亮两张状态.上面设置中3个选项代表的意义如下:Automatic (base on ...原创 2019-08-21 15:30:46 · 1636 阅读 · 1 评论 -
Android Sqlite3学习
一.Sqlite介绍SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,Android使用它保存本地数据安装Sqlite3sudo apt-get install sqlite3Sqlie 支持的基本数据类型类型介绍...原创 2019-08-21 18:51:42 · 2239 阅读 · 0 评论 -
Android SVG矢量图
矢量图也称为面向对象的图像或绘图图像,在数学上定义为一系列由线连接的点。矢量文件中的图形元素称为对象。每个对象都是一个自成一体的实体,它具有颜色、形状、轮廓、大小和屏幕位置等属性。Android资源文件中我们可以看见矢量图定义<?xml version="1.0" encoding="utf-8"?><vector xmlns:android="http://schema...原创 2019-09-06 15:11:06 · 316 阅读 · 0 评论 -
【Android】几个应用重新进入相关的属性
android:clearTaskOnLaunch=”true”当重新launch这个task的时候(例如:当通过桌面重新进入这个应用)会清理带这个属性的activity这个属性必须在这个task的根Activity(不是栈底,是进入而是这个应用的第一个acitivty,比如一般应用启动缓存界面或广告,之后finish了,不在task,他仍然是跟activity)android...原创 2018-07-14 14:54:45 · 187 阅读 · 0 评论 -
error: cannot find symbol class RecyclerView
error: cannot find symbol class RecyclerViewgit diffdiff --git a/app/build.gradle b/app/build.gradleindex 9e9ddd7..6d6c837 100644--- a/app/build.gradle+++ b/app/build.gradle@@ -25,4 +25,5 @@ ...原创 2018-08-03 17:23:43 · 1451 阅读 · 0 评论 -
背景渐变(抄自原生DeskClock)
使用:public class MainActivity extends BaseActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.l...翻译 2018-08-13 17:59:21 · 257 阅读 · 0 评论 -
自定义导航条
android原生,Contact 应用import android.content.Context;import android.content.res.Configuration;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import andr...转载 2018-12-28 17:42:06 · 267 阅读 · 0 评论 -
Android 9无法通过反射获取系统属性
Android 9.0之后获取无法通过反射获取系统属性,如果我们需要知道手机某个属性,可以通过以下的方式.注意:这种方式不能获取所有的属性.不然谷歌显示SystemProper的访问就没有意义了.package com.tinno.android.appinfocollector.tools;import android.text.TextUtils;import android.util...原创 2019-01-19 11:25:54 · 3856 阅读 · 0 评论 -
Android短信通知亮屏
平台 Qualcommonandroid版本 8.0主动显示功能谷歌在android 6.0之后有一个主动显示的功能,如果设备支持这个功能的话,直接设置这个功能默认打开就可以了,因为正常唤醒屏幕的操作是会影响手机功耗的.对应的Setting属性(./base/core/java/android/provider/Settings.java)在定制的时候默认打开就可以,这种显示,手机在收...原创 2018-11-27 17:47:21 · 5181 阅读 · 0 评论 -
强,弱,软,虚引用回收时机
强引用正常定义的对象引用。 回收条件:不在引用弱引用(WeakReference)可用来解决asynctask 内存泄漏的问题。在切换其他acitivty的时候,如果这个actiity已经destory了,就应该让它回收。此时如果我们用弱引用的话,就能防止不能被回收。 回收条件:一般在弱引用的同时,这个对象可能也被强引用了。如果这个强引用消失了,系统就开始回收弱引用。软引用...转载 2018-07-28 10:51:32 · 2864 阅读 · 1 评论 -
9.0 原生setting 默认应用手机助手显示异常
问题点:进入设置应用和通知&amp;gt;默认应用&amp;gt;助手和手机输入助手应用进入助手应用,选择none,退到上一个界面,原来显示&quot;使用屏幕上的文字内容&quot;消失了.然后切换横竖屏,在进入手机助手显示Google助理,退回上一个界面.&quot;使用屏幕上的文字内容&quot;这个设置项没有出现,只有在横竖屏切换一次才会出现.先看修改: private void原创 2019-01-16 16:13:28 · 854 阅读 · 0 评论 -
Android定制语言
Android在添加支持的语言之后,我们在手机上可以看到有Suggested和All languages两个选项.可以定制这个让我们可以决定显示的位置.在framework base/core/java/com/android/internal/app/LocaleStore.java中定义了LocaleInfo的子类,他有一个方法:isSuggested(),顾名思义,如果返回未true,就...原创 2018-12-26 19:32:11 · 1039 阅读 · 0 评论 -
android拨打电话无法跳转到通话界面
最近客户要求我们用谷歌的dialer替换原生的dialer,替换之后发现在拨打电话的时候无法跳转到指定的界面.通过阅读源码发现,telecom固定的了跳转的界面.packages/services/Telecomm/src/com/android/server/telecom/InCallController.java public InCallController(Context co...原创 2019-02-01 11:56:33 · 3617 阅读 · 0 评论 -
SimpleDateFormat日期格式
名称字段说明年yyyy或YYYY小于等于4个都是一样的,大于的会在前面补0年中的月份MMM例如:Jan,英文月年中的月份MM例如01,数字月,2个M,1-9月前补0年中的周数w略月中的周数W略年中的天数DNumber 189月份中的天数dNumber 10数字星期F周四显示4英语星期E周四显示...原创 2019-01-24 15:25:58 · 774 阅读 · 0 评论 -
《SystemUI》限制低电量打开手电筒
任务:当电流低于16%的时候,关闭手电,并且在提醒用户不能打开。监听电量,实现关闭手电手电图标实现在FlashlightTile.java监听电量,一般会使用广播,但是SystemUI BatteryController注册了电量广播,可以利用BatteryController里面有相关的操作监听,当电量低于16%,不能打开手电筒,并弹出提示框当电量低于16%,如果手电筒处...原创 2018-09-17 13:56:24 · 1741 阅读 · 0 评论 -
一个可以拖动的Dialog
目标:自定义dialog,在dialog上晃动,dialog跟着移动.松开后回到原来的位置package com.android.settings;import android.app.Dialog;import android.content.Context;import android.os.Handler;import android.os.Message;impo...原创 2018-09-17 13:53:01 · 3543 阅读 · 0 评论 -
java Lambda表达式心得
java Lambda表达式只能用来简化仅包含一个public方法的接口的创建括号形式只能是接口 否则报:Target type of a lambda conversion must be an interface只能有一个public方法 否则报:Multiple non-overriding abstract methods found AInterfacetestA((i...原创 2018-08-29 16:05:30 · 2467 阅读 · 0 评论