- 作用: 是在后台长期运行某些服务,如复杂的计算 、音乐播放、下载等等。 分类: Service按运行的位置划分有:本地服务、远程服务Service按运行的类型划分有:前台服务、后台服务Service按运行的功能划分有:可通信服务、不可通信服务 下面逐一讲解。 本地服务与远程服务 类型说明优缺点应用场景本地服务(最常用)运行在主线程,当主线程终止后,服务也会跟着... 作用: 是在后台长期运行某些服务,如复杂的计算 、音乐播放、下载等等。 分类: Service按运行的位置划分有:本地服务、远程服务Service按运行的类型划分有:前台服务、后台服务Service按运行的功能划分有:可通信服务、不可通信服务 下面逐一讲解。 本地服务与远程服务 类型说明优缺点应用场景本地服务(最常用)运行在主线程,当主线程终止后,服务也会跟着...
- android studio 使用夜神模拟器 开发调试 可能会问,为什么不用Genymotion啊?我是用了Genymotion 模拟器大约4月左右,始终感觉有些繁琐,有些慢,有时会卡。后来,在朋友推荐下,使用了夜神模拟器 来做安卓开发调试。总体感觉不错,才推荐给大家。 一、夜神模拟器: 二、相信很多... android studio 使用夜神模拟器 开发调试 可能会问,为什么不用Genymotion啊?我是用了Genymotion 模拟器大约4月左右,始终感觉有些繁琐,有些慢,有时会卡。后来,在朋友推荐下,使用了夜神模拟器 来做安卓开发调试。总体感觉不错,才推荐给大家。 一、夜神模拟器: 二、相信很多...
- new Thread的缺点: 每次new Thread新建对象都会影响性能线程缺乏统一管理,可能出现无限制新建线程,导致相互竞争,及可能占用过多系统资源导致死机或oom没有定时执行、定期执行、线程中断等功能 相比new Thread,Java提供的四种线程池的优点: 重用存在的线程,减少对象创建、消亡的开销,性能好能够有效控制最大并发线程数,提高系统资源的使用率,... new Thread的缺点: 每次new Thread新建对象都会影响性能线程缺乏统一管理,可能出现无限制新建线程,导致相互竞争,及可能占用过多系统资源导致死机或oom没有定时执行、定期执行、线程中断等功能 相比new Thread,Java提供的四种线程池的优点: 重用存在的线程,减少对象创建、消亡的开销,性能好能够有效控制最大并发线程数,提高系统资源的使用率,...
- WebView漏洞: ** WebView 中的 addJavascriptInterface()接口** JS调用Android的其中一个方式是通过addJavascriptInterface接口进行对象映射: // 参数1:Android的本地对象 // 参数2:JS的对象 // 通过对象映射将Android中的本地对象和JS中的对象进行关联,从而实现JS调用... WebView漏洞: ** WebView 中的 addJavascriptInterface()接口** JS调用Android的其中一个方式是通过addJavascriptInterface接口进行对象映射: // 参数1:Android的本地对象 // 参数2:JS的对象 // 通过对象映射将Android中的本地对象和JS中的对象进行关联,从而实现JS调用...
- 屏幕尺寸 指屏幕的对角线的长度,单位是英寸,1英寸=2.54厘米。 常见的屏幕尺寸有2.4、2.8、3.5、3.7、4.2、5.0、5.5、6.0等 屏幕分辨率 指在横纵向上的像素点数,单位是px,1px=1个像素点。一般以纵向像素*横向像素来表示,如1960*1080。 屏幕像素密度 指每英寸上的像素点数,单位是dpi,即“dot per inch”的缩写。... 屏幕尺寸 指屏幕的对角线的长度,单位是英寸,1英寸=2.54厘米。 常见的屏幕尺寸有2.4、2.8、3.5、3.7、4.2、5.0、5.5、6.0等 屏幕分辨率 指在横纵向上的像素点数,单位是px,1px=1个像素点。一般以纵向像素*横向像素来表示,如1960*1080。 屏幕像素密度 指每英寸上的像素点数,单位是dpi,即“dot per inch”的缩写。...
- android自定义View,相信大家都会了。因此我也不打算在这一篇文章中去展示如何自定义View。我想分享一下自定义View中onMeasure、onLayout、onDraw这几个方法中,我认为有趣的地方,尤其是onMeasure方法对视图的测量。 onMeasure:测量视图大小 首先,这个方法是用于测量我们的View的大小的。要用好这个方法,关键在于理解on... android自定义View,相信大家都会了。因此我也不打算在这一篇文章中去展示如何自定义View。我想分享一下自定义View中onMeasure、onLayout、onDraw这几个方法中,我认为有趣的地方,尤其是onMeasure方法对视图的测量。 onMeasure:测量视图大小 首先,这个方法是用于测量我们的View的大小的。要用好这个方法,关键在于理解on...
- 以下这些权限在Android6. 0之后,都需要动态申请: 我们以申请WRITE_EXTERNAL_STORAGE权限为例 1、在AndroidManifest.xml中注册权限 <manifest> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/... 以下这些权限在Android6. 0之后,都需要动态申请: 我们以申请WRITE_EXTERNAL_STORAGE权限为例 1、在AndroidManifest.xml中注册权限 <manifest> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/...
- 概述 在Android中实现跨进程通信的方式有很多种,如广播、Content Provider、AIDL(Android Interface Definition Language)。AIDL在跨进程通信中用得最多,因为AIDL相比其他方式,速度更快,效率更高。 AIDL最常见的使用场景:让某个Service与多个应用程序组件之间进行跨进程通信,从而可以实现多个应用... 概述 在Android中实现跨进程通信的方式有很多种,如广播、Content Provider、AIDL(Android Interface Definition Language)。AIDL在跨进程通信中用得最多,因为AIDL相比其他方式,速度更快,效率更高。 AIDL最常见的使用场景:让某个Service与多个应用程序组件之间进行跨进程通信,从而可以实现多个应用...
- xml方式: 在res/drawable中创建一个xml文件(repeat_bg.xml) <?xml version="1.0" encoding="utf-8"?> <bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:src="@mipmap/bg... xml方式: 在res/drawable中创建一个xml文件(repeat_bg.xml) <?xml version="1.0" encoding="utf-8"?> <bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:src="@mipmap/bg...
- 在API 26以下,每个应用只有一个渠道。Android8.0(API 26)引入了通知渠道,界面将渠道称作“类别”,从API 26开始必须为所有通知分配渠道,否则通知是不会显示的。 将通知归类为不同的渠道,用户可以停用应用的特定通知渠道(而非停用应用的所有通知)。在Android系统设置中可以控制每个渠道的视觉和听觉选项。用户还可以长按通知以更改所关联渠道的行为。 一... 在API 26以下,每个应用只有一个渠道。Android8.0(API 26)引入了通知渠道,界面将渠道称作“类别”,从API 26开始必须为所有通知分配渠道,否则通知是不会显示的。 将通知归类为不同的渠道,用户可以停用应用的特定通知渠道(而非停用应用的所有通知)。在Android系统设置中可以控制每个渠道的视觉和听觉选项。用户还可以长按通知以更改所关联渠道的行为。 一...
- Android系统的广播有一个全局监听器,专门用于监听/接收应用程序发出的广播消息。 广播的作用 可以实现不同组件之间的通信(这些组件可以是同一应用内的或不同应用内的。)多线程通信与Android系统通信,如电话呼入、网络可用时等。 广播的通信模型 广播的使用流程 自定义广播接收者BroadcastReceiver (1)继承BroadcastRec... Android系统的广播有一个全局监听器,专门用于监听/接收应用程序发出的广播消息。 广播的作用 可以实现不同组件之间的通信(这些组件可以是同一应用内的或不同应用内的。)多线程通信与Android系统通信,如电话呼入、网络可用时等。 广播的通信模型 广播的使用流程 自定义广播接收者BroadcastReceiver (1)继承BroadcastRec...
- 强引用 Java中最基本、最常用的就是“强引用",如果存在着对某个对象的强引用,GC时就不会回收该对象。 软引用 “软引用”通过Java类java.lang.ref.SoftReference实现,一般情况下,GC是不会回收“软引用”引用的对象的。只有当系统内存不足时才会回收。“软引用”特别适合用来引用图片资源,仅当系统内存不足时才释放图片资源。 弱引用 “弱... 强引用 Java中最基本、最常用的就是“强引用",如果存在着对某个对象的强引用,GC时就不会回收该对象。 软引用 “软引用”通过Java类java.lang.ref.SoftReference实现,一般情况下,GC是不会回收“软引用”引用的对象的。只有当系统内存不足时才会回收。“软引用”特别适合用来引用图片资源,仅当系统内存不足时才释放图片资源。 弱引用 “弱...
- 1、显式Intent(explicit intent) 显式Intent明确指定了要启动的activity: Intent intent= new Intent(this, Target.class) 1 2、隐式Intent(implicit intent) 隐式Intent没有明确指定要启动的activity ,而是通过设置一些Intent Filter... 1、显式Intent(explicit intent) 显式Intent明确指定了要启动的activity: Intent intent= new Intent(this, Target.class) 1 2、隐式Intent(implicit intent) 隐式Intent没有明确指定要启动的activity ,而是通过设置一些Intent Filter...
- 将xml转换成对象的方法有很多种。今天我要走一条“曲线”来实现这个转换。 1.思路 将xml转换成json,再通过将json转换成java对象。 2.添加java-json.jar包 java-json.jar将此包放入项目中。这个包实现了xml到json字符串的转化,甚至对象到xml的转化。 3.使用方法 // xml中有“<![CDATA[ ]]&... 将xml转换成对象的方法有很多种。今天我要走一条“曲线”来实现这个转换。 1.思路 将xml转换成json,再通过将json转换成java对象。 2.添加java-json.jar包 java-json.jar将此包放入项目中。这个包实现了xml到json字符串的转化,甚至对象到xml的转化。 3.使用方法 // xml中有“<![CDATA[ ]]&...
- Android 的 SQLLite数据库 关系型数据库 SQLLite 每个应用程序都要使用数据,Android应用程序也不例外,Android使用开源的、与操作系统无关的SQL数据库—SQLite。SQLite第一个Alpha版本诞生于2000年5月,它是一款轻量级数据库,它的设计目标是嵌入式的,占用资源非常的低,只需要几百K的内存就够了。SQLite已经被多种软... Android 的 SQLLite数据库 关系型数据库 SQLLite 每个应用程序都要使用数据,Android应用程序也不例外,Android使用开源的、与操作系统无关的SQL数据库—SQLite。SQLite第一个Alpha版本诞生于2000年5月,它是一款轻量级数据库,它的设计目标是嵌入式的,占用资源非常的低,只需要几百K的内存就够了。SQLite已经被多种软...
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签