Android基础
文章平均质量分 68
Mars-xq
好记性不如烂笔头。
展开
-
java-RGB与十六进制的互相转换 / 颜色十进制 / 十六进制 互转
备注解释%02XX代表以16进制形式输出;02表示不足两位,前面补0输出;如果超过两位,则实际输出;如果直接写为%2x,数据不足两位时,实际输出,即不额外补0输出;如果超过两位,则实际输出。......原创 2022-07-15 12:09:03 · 3463 阅读 · 0 评论 -
Android Studio3.0 flavorDimensions多维度理解(版本差异化打包) : flavorDimensions 、 dimension
参考:flavorDimensions和productFlavors——安卓gradle原创 2022-07-05 10:39:31 · 695 阅读 · 0 评论 -
activity / fragment 生命周期
参考:安卓基础:Activity/Fragment 生命周期原创 2022-06-24 10:53:21 · 100 阅读 · 0 评论 -
Android使用ItemTouchHelper实现RecyclerView的item拖动位置交换
activity_main5.xml:item_rv.xml :原创 2022-06-10 10:59:08 · 732 阅读 · 0 评论 -
android文档 :screenOrientation 、 launchMode 、 configChanges 、 windowSoftInputMode
android 官网文档原创 2022-06-08 12:14:13 · 943 阅读 · 0 评论 -
Android:通知:Not allowed to start service Intent / Bad notification for startForeground
报错一java.lang.RuntimeException:Unable to start receiver 包名.MainReceiver: java.lang.IllegalStateException: Not allowed to start service Intent { cmp=包名/.MainService }: app is in background uid UidRecord{90638 u0a10 RCVR idle change:Android o需要适配服务if原创 2020-11-23 18:34:30 · 3050 阅读 · 1 评论 -
验证apk是否已签名
先进入apk所在的目录,然后执行命令:jarsigner -verify apk名称即可,如下:D:\chromedownload\StateSwitchLayout-master\MyBuglyHoxFix>cd D:\chromedownload\StateSwitchLayout-master\MyBuglyHoxFix\app\build\outputs\apk\release...原创 2018-10-11 15:30:41 · 562 阅读 · 0 评论 -
Android中通过泛型解决findViewById需要强制类型转换的问题
参考:Android开发小窍门通过泛型简化findViewById类型转换定义方法public class BaseActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceStat...原创 2018-10-11 16:41:33 · 1323 阅读 · 0 评论 -
android:configChanges
属性目的:当所指定属性(Configuration Changes)发生改变时,通知程序调用 onConfigurationChanged()函数。设置方法将下列字段用“|”符号分隔开,例如:“locale|navigation|orientation”“mcc“ 移动国家号码,由三位数字组成,每个国家都有自己独立的MCC,可以识别手机用户所属国家。“mnc“ 移动网号,在一个国家或者地...原创 2018-10-09 11:04:56 · 997 阅读 · 0 评论 -
Android-获取日期时间Calendar与date
注意:h:12小时制小时数 H:24小时制小时数import java.text.DateFormat;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;/** * Created by Administrato原创 2017-05-08 14:50:51 · 934 阅读 · 0 评论 -
android studio 3.0 以上 查看sharedpreference
android studio 3.0 以上 查看sharedpreference 点击android studio 右侧的device file explore,找到data / data 目录:找到自己需要的项目包名:找到自己需要查看到sharedpreference 本地的缓存名称,并打开即可查看(内容、大小等信息):...原创 2018-07-23 13:42:30 · 3731 阅读 · 1 评论 -
android :空指针Java.lang.NullPointerException
参考:安卓开发过程中空指针的问题Java.lang.NullPointerException空指针概念:1.所谓的指针,就是java中的对象的引用。比如String s;这个s就是指针。2.所谓的空指针,就是指针的内容为空,比如上面的s,如果令它指向null,就是空指针。3.所谓的空指针异常,就是一个指针是空指针,你还要去操作它,既然它指向的是空对象,它就不能使用这个对象的方法...原创 2018-07-23 11:44:38 · 2346 阅读 · 0 评论 -
点击EditText外隐藏输入框
推荐阅读:Android 判断当前点击位置是否在圆的内部 方法一: 重写dispatchTouchEvent,判断点击EditText之外则隐藏输入框。@Overridepublic boolean dispatchTouchEvent(MotionEvent ev) { if (ev.getAction() == MotionEvent.ACTION_DOWN) {...原创 2018-05-31 10:43:25 · 635 阅读 · 0 评论 -
java代码设置系统背景selector
去掉背景:view.setBackgroundResource(0);使用系统背景:selectableItemBackgroundxml中设置:<LinearLayout android:id="@+id/high_public_ll" android:layout_width="match_parent" android:layout_he...原创 2018-05-29 13:45:19 · 349 阅读 · 0 评论 -
android-Scheme与网页跳转原生的三种方式
参考:Android业务组件化之URL Scheme使用什么是 URL Scheme?android中的scheme是一种页面内跳转协议,是一种非常好的实现机制,通过定义自己的scheme协议,可以非常方便跳转app中的各个页面;通过scheme协议,服务器可以定制化告诉App跳转那个页面,可以通过通知栏消息定制化跳转页面,可以通过H5页面跳转页面等。URL Scheme应用场...原创 2017-10-27 10:47:54 · 19620 阅读 · 2 评论 -
android版本号的比较
版本号的比较(用于升级判断):比如:1.1 与 1.21.1.1 与 1.1.21.1 与 1.1.2工具类public class VersionUtil { /** * 版本号比较 * * @param version1 * @param version2 * @return */ ......原创 2018-03-07 15:41:40 · 1051 阅读 · 0 评论 -
Error: Invoke-customs are only supported starting with Android O (--min-api 26)
Android Studio SDK的版本升级到28以后 出现Error: Invoke-customs are only supported starting with Android O (--min-api 26)解决:添加compileOptionsandroid { compileSdkVersion 28 defaultConfig { appl...原创 2018-12-15 12:35:43 · 1237 阅读 · 0 评论 -
vlayout的简单介绍
参考:alibaba/vlayout github 中文文档依赖compile ('com.alibaba.android:vlayout:1.2.8@aar') { transitive = true}初始化LayoutManagerfinal RecyclerView recyclerView = (RecyclerView) findViewById(R.id.recycle...原创 2019-02-15 11:26:24 · 637 阅读 · 0 评论 -
Android 查找匹配的文字并显示红色
布局<?xml version="1.0" encoding="utf-8"?><ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/scrollView" android:layout_width="match_parent" a...原创 2019-04-23 17:37:20 · 930 阅读 · 0 评论 -
JobScheduler/JobService/JobInfo
JobScheduler是Android5.0 开始引入了一个新系统服务。它将后台任务调度直接交给系统服务(JobSchedulerSevice)管理,并且可以设置许多约束条件,如周期调度,延迟调度,网络连接,电源插入,还有AndroidL引入的空闲模式,在条件符合的情况下,系统服务BindService的方式把应用内Manifest中配置的JobService启动起来,并通过进程间通信B...原创 2019-04-09 19:08:46 · 735 阅读 · 0 评论 -
AlarmManager
参考:https://blog.csdn.net/wangxingwu_314/article/details/8060312//Android 4.4- 使用 AlarmManagerAlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);Intent i = new Intent(DaemonEnv.sApp, D...原创 2019-04-09 18:31:10 · 572 阅读 · 0 评论 -
android国内手机厂商白名单跳转工具类
public class SettingUtils { public static void enterWhiteListSetting(Context context){ try { context.startActivity(getSettingIntent()); }catch (Exception e){ ...原创 2019-04-11 15:45:38 · 2787 阅读 · 4 评论 -
PowerManager与WakeLock
参考 PowerManager简介 菜鸟教程:10.6 PowerManager(电源服务) android PowerManager分析(非常详细) PowerManager(电源服务),用于 管理CPU运行,键盘或屏幕亮起来;PowerManager powerManager = (PowerManager) this.getSystemService(Context.POWER_S...原创 2019-04-10 16:37:45 · 1628 阅读 · 0 评论 -
PendingIntent
参考:彻底认识 PendingIntentIntent和PendingIntent的区别Intent 和 PendingIntent 的区别intent英文意思是意图,pending表示即将发生或来临的事情。PendingIntent这个类用于处理即将发生的事情。比如在通知Notification中用于跳转页面,但不是马上跳转。Intent 是及时启动,intent 随所在的activ...原创 2019-04-10 10:16:35 · 692 阅读 · 0 评论 -
android8.0通知
# 通知级别用户通知级别Android8.0及以上Android8.0以下紧急级别(发出通知声音并显示为提示通知)IMPORTANCE_HIGHPRIORITY_HIGH或者PRIORITY_MAX高级别(发出通知声音并且通知栏有通知)IMPORTANCE_DEFAULTPRIORITY_DEFAULT中等级别(没有通知声音但通知栏有通知)IMPORT...原创 2019-03-22 16:00:25 · 890 阅读 · 1 评论 -
weightSum与weight
weight:该控件能在屏幕中占据多大的空间。这个值越大,表明该控件可以在父控件中占据较多的“剩余”空间。默认的weight是0。weightSum:定义了weight 总和的最大值。如果 android:weightSum 没有定义,那么默认值就是通过各个子类的 layout_weight 累加得到。&lt;?xml version="1.0" encoding="utf-8"?&原创 2019-02-14 11:22:19 · 575 阅读 · 0 评论 -
wms(WindowManager),layoutInflater
参考:WindowManager.LayoutParams的探究WindowManager 的部分源码:public interface WindowManager extends ViewManager { //静态内部类 public static class LayoutParams extends ViewGroup.LayoutParams impleme...原创 2019-02-12 17:57:08 · 235 阅读 · 0 评论 -
博客导航
弹框:弹窗之一: dialogFragment的使用 弹窗之二:PopupWindow的使用弹窗之三:自定义Dialog弹框之四:activity 异步:Java四种线程池的使用解析json:Android-Gson+GsonFormat的导入 Android-json解析(一):Gson的使用 And原创 2017-05-10 14:35:11 · 448 阅读 · 0 评论 -
Notification
Notification原创 2017-01-16 11:24:03 · 1685 阅读 · 0 评论 -
Android-LayoutInflater.inflate
获得 LayoutInflater 实例的三种方式//获得 LayoutInflater 实例的三种方式://三种方式本质是相同的,最终本质是都是调用的Context.getSystemService()。 LayoutInflater inflater1 = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFL原创 2017-05-09 16:24:56 · 284 阅读 · 0 评论 -
Android-Activity、Window、View之间的关系
Activity 可以说是应用程序的载体(也可以理解为界面的载体,但是不界面),用户能够在上面绘制界面(Activity本身不绘制界面),并提供用户处理事件的API,维护应用程序的生命周期(Android应用程序是由多个 Activity 堆积而成,而各个 Activity 又有其独立的生命周期)。Activity内部组合了一个Window(这是一个抽象类,具体是PhoneWindow)对象。我们自原创 2017-05-09 16:49:04 · 595 阅读 · 0 评论 -
android- API 级别 SDK版本
参考:Develop API Guides原创 2017-06-17 11:14:59 · 321 阅读 · 0 评论 -
android - context
public abstract class Context {...}public class ContextWrapper extends Context {...}//Application public class Application extends ContextWrapper{...}//Service public abstract class Service extends原创 2017-06-08 12:28:49 · 264 阅读 · 0 评论 -
android-Activity生命周期
public class HelloActivity extends Activity { public static final String TAG = "HelloActivity"; /** * 第一个被运行的方法 * 初始化页面 * Bundle恢复上次的状态 */ @Override public void on原创 2017-06-20 13:37:54 · 378 阅读 · 0 评论 -
Android框架
从上图中可以看出,Android系统架构为四层结构,从上层到下层分别是应用程序层、应用程序框架层、系统运行库层以及linux内核层,分别介绍如下:1)应用程序层(Application)Android平台不仅仅是操作系统,也包含了许多应用程序,诸如SMS短信客户端程序、电话拨号程序、图片浏览器、Web浏览器等应用程序。这些应用程序都是 用Java语言编写的,并且这些应用程序都是可以被开发人员开发的其原创 2017-06-21 16:57:54 · 1765 阅读 · 0 评论 -
android-View.post与Handler.post的区别
View.postDelayedpackage android.view;public class View implements Drawable.Callback, KeyEvent.Callback, AccessibilityEventSource { public boolean postDelayed(Runnable action, long delayMil原创 2017-07-04 10:49:48 · 2036 阅读 · 1 评论 -
android - 提交代码前的Review 清单
清理操作1.页面退出时,是否完成必要的清理操作 1) 是否调用 Handler 的 removeCallbacksAndMessages(null) 来清空 Handler 里的消息; 2) 是否取消了还没完成的请求; 3) 在页面里注册的监听,是否反注册; 4) 假如自己用到观察者模式,是否反注册; 5) 假如用了 RxJava 的话,是否解除订阅;2.数据库的游标是否已经关闭 这个点原创 2017-06-25 17:57:35 · 477 阅读 · 0 评论 -
Android-PackageManager与startActivity启动第三方应用的Activity
java代码:package com.example.administrator.mydb;import android.app.Activity;import android.content.ComponentName;import android.content.Intent;import android.content.pm.ApplicationInfo;import android原创 2017-05-08 17:40:45 · 2175 阅读 · 0 评论 -
UUID与获取随机验证码
UUID是Universally Unique Identifier的缩写,它是在一定的范围内(从特定的名字空间到全球)唯一的机器生成的标识符。 public static void main(String[] args) { //获得六位验证码(包括小写字母和数字,不包括大写字母)// String result = UUID.randomUUID().toS原创 2017-05-08 16:09:28 · 2400 阅读 · 2 评论 -
Android-handler:sendToTarget与sendMessage的区别
1、 message 从handler 类获取,从而可以直接向该handler 对象发送消息 2、new出来的message或者通过Message.obtain的方式创建的message,可直接调用 handler 的发送消息方法来发送消息。/*1、message由handler创建,可直接向handler发送消息。msg.sendToTarget()*/ Message...原创 2017-05-05 14:40:56 · 11160 阅读 · 0 评论