隐式启动判断是否有匹配的Intent】的更多相关文章

一.PackageManager的resolveActivity public abstract ResolveInfo resolveActivity(Intent intent, int flags); getPackageManager().resolveActivity(); 返回能够匹配的Intent,如果不能匹配就返回NULL, 二.PackageManager的queryIntentActivities public abstract List<ResolveInfo> quer…
简介 Android开发中,Activity,Service 和 BroadcastReceiver 启动有两种方式,显示启动和隐式启动. 为方便下面描述,我以Activity启动为例. 显示启动便是直接指定上下文和启动的Activity的类: Intent intent = new Intent(this,Activity.class); startActivity(intent); 隐式启动则灵活的多,通过action,category 和 data 的组合,实现多种匹配方法来启动Activ…
转载本专栏文章,请注明出处,尊重原创 .文章博客地址:道龙的博客 本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 本篇文章,对隐式启动Activity再做分析. 有些人可能会说了,隐式启动活动不是很简单吗?这有什么不理解的?话先别说的这么早,对于隐式启动,还是具有很大的坑要爬的,当然,您如果是一个资深开发者就另当别论了. 本篇文章,我们从最简单的开始,一步步引入,相信这样的方式,读起来也会轻松一些. 我们平时启动一个活动,会通过两种方式.1.显示启动:2.隐式启动. (一)首…
1.显式启动Intent intent = new Intent(this, class);startActivity(intent); 2.隐式启动AndroidManifest.xml中定义某个Activity的intent-fliter<intent-filter><action android:name="com.example.activity.ACTION_START" /><category android:name="androi…
Intent intent = new Intent(); intent.setAction("com.viaembedded.veonvif.RemoteService");//Android5.0后service不能采用隐式启动,故此处加上包名 intent.setPackage("com.example.oscarzhou.nvrmanagerapp");// bindService(intent, serConn, BIND_AUTO_CREATE); 注意…
Android的Acitivity启动大致有两种方式:显式启动与隐式启动.下面分别介绍: 1.显示启动: 清单文件注册Activity <activity android:name="com.example.intentmethod.XianshiActivity" android:label="@string/xianshi_label" > </activity> 启动方法: Intent intent = new Intent(Main…
隐藏APP桌面图标 <activity android:name=".LaunchActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <data android:host="LaunchActivity" android:scheme="com.tuobang.xsfx" too…
显式Intent我已经简单使用过了,也介绍过概念,现在来说一说隐式Intent: 隐式Intent:就是只在Intent中设置要进行的动作,可以用setAction()和setData()来填入要执行的动作和数据,然后再用startActivity()启动合适的程序. 此外:如果手机中有多个适合的程序,还会弹出列表供用户选择(假如你手机有两个浏览器,你打开一个连接,这是系统就会弹出两个浏览器列表供你选择) 在此举个使用隐式Intent打开activity的快速拨号例子: xml布局文件代码如下:…
在进程间通信时,常会设计开启远程 Service 的情况.开启远程 Service 的方式有两种,一种时显示开启,一种是隐式开启.下面分别来看: 一.隐式开启 服务端:Service 所在 AndroidManifest.xml 中的配置如下,注意 exported = "true" ,为 true 才可被其他 App 访问,否则就只限于应用内. <service android:name=".BookManagerService" android:expor…
android5.0以后不能使用隐式intent :需要指定Intent的ComponentName信息:intent.setComponent(xxx),或指定Intent的setPackage("包名"),如果两者都没有指定的话将会报以上错误.尤其在framework层启动APP层的service时,如果是隐式启动service,可能会导致系统进程挂掉,出现不断重启的现象. 三 解决方法 1. Intent intent = new Intent();    ComponentNa…
android5.0以后不能使用隐式intent :需要指定Intent的ComponentName信息:intent.setComponent(xxx),或指定Intent的setPackage("包名"),如果两者都没有指定的话将会报以上错误.尤其在framework层启动APP层的service时,如果是隐式启动service,可能会导致系统进程挂掉,出现不断重启的现象. 三 解决方法 1. Intent intent = new Intent();    ComponentNa…
显示启动activity                                                                                                                   这个很简单,下面是代码示例:为了看着方便,所以就把layout直接截图了,里面的代码只是一些简单的布局.activity_login.xml:…
1.显示Intent意图明显,通过Intent启动另外一个活动,这是安卓中各组件进行交互的一种重要方式.一般用于启动活动,启动服务,发送广播等场景. 实现方法,这里我只说思路,实践还是要自己实操才能明白: 1.首先多创建一个activity,命名为别的,这个就是待会咱们要调用的另外一个activity,可以跟主activity一样. 2.创建完后记得在AndroidManifest.xml中为新创建的activity进行注册. 同样的,要将其包括在<application分支下 ep: <ac…
#创建第二个activity * 新创建的activity.必须在清单文件里做配置,否则系统找不到,在显示时会直接报错 <activity android:name="com.itheima.createactivity.SecondActivity"></activity> * 仅仅要有下面代码,那么就是入口activity.就会生成快捷图标 <intent-filter>                 <action android:na…
安卓中Activity的跳转几乎是每一个APP都会用到的技术点.而且他的使用时十分简单的. 这里我们先说一下主要的技术要点: 1.在清单文件中注册新的Activity 2.通过意图跳转 这里我们看一下部分清单文件 注意,有配置红框的一般就是我们的主Activity,也就是程序的主入口.如果同时配置了两个主入口,则会生成两个快捷图标.一般我们不会这样使用. 好了,下面直接看代码吧. 清单文件 <?xml version="1.0" encoding="utf-8"…
想让第一个activity把第二个activity打开的话,在清单文件里面声明一下并且 右键Debug As Android Application居然没有报错 mimeType  讲HTML的时候就讲过的对应的一个响应头.setContentType("text/html").这个实际上就是一个mime. 通过mime就可以说明当前这个activity可以处理的数据.我当前这个activity接收什么样类型的数据?所以mime就是用来说明我当前应用可以处理的媒体类型都有哪些?可以打开…
本系列文章,参考<第一行代码>,作为个人笔记 更多内容:更多精品文章分类 使用隐式 Intent 相对于显示 Intent ,隐式 Intent 比较含蓄.这种方式不明确指出我们想要启动哪一个 Activity.而是定义了一系列更为抽象的 action 和 category 等信息.然后交给系统去分析这个 Intent ,并帮我们找出这个合适Activity. 合适的 Activity 就是指的可以响应这个隐式 Intent 的 Activity. 通过在 <activity> 标…
随着api的升级,系统的很多应用包名和类名都改掉了,所以很多时候,打开系统应用的时候会报错,隐式意图就是解决组件之间松耦合,描述动作行为 获取Intent对象,通过new出来 调用Intent对象的setAction(action)方法,设置动作,参数:String类型的常量例如:Intent.ACTION_VIEW 调用Intent对象的setData(data)方法,设置数据,参数:Uri对象, 例如:网址Uri.parse(“http:xxx”); 调用startActivity(inte…
隐式意图是通过指定一组动作或者属性实现,主要用于跨应用使用. 1.创建一个意图对象 Intent intent = new Intent(); 2.设置意图过滤器 intent.setAction("android.intent.action.testActivity"); //对应于action intent.addCategory("android.intent.category.DEFAULT");//对应于category intent.setData(Ur…
Intent intent=new Intent(LoginActivity.this, MainActivity.class);//显示意图启动,显示从一个activity到另一个activity, 隐示意图启动activity,不显示activity名字,而通过一个action或者category一个字符串,跨应用程序启动另一个应用程序的activity只能用隐示意图启动, Main.xml <LinearLayout xmlns:android="http://schemas.and…
在上一篇学习安卓开发[3] - 使用RecyclerView显示列表中了解了在进行列表展示时RecyclerView的使用,本次记录的是在应用中如何通过隐式Intent调用其它应用的功能,比如发短信.打电话.拍照等 隐式Intent 短信 判断是否存在相关APP 相机 FileProvider Bitmap 功能声明 隐式Intent Intent对象用来向操作系统说明需要处理的任务.使用显式Intent时,要指定操作系统需要启动的activity,但使用隐式intent,只需告知操作系统想要进…
1.0 在helloworld项目基础上创建活动SecondActivity: 2.0 其中main.xml: <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/add_item" androi…
Javascript 中,数字 0 为假,非0 均为真 在条件判断运算 == 中的转换规则是这样的: 如果比较的两者中有布尔值(Boolean),会把 Boolean 先转换为对应的 Number,即 0 和 1,然后进行比较. 如果比较的双方中有一方为 Number,一方为 String时,会把 String 通过 Number() 方法转换为数字,然后进行比较. 如果比较的双方中有一方为 Boolean,一方为 String时,则会将空字符串""转换为 false,除此外的一切字符…
Android基本的设计理念是鼓励减少组件间的耦合,因此Android提供了Intent (意图) ,Intent提供了一种通用的消息系统,它允许在你的应用程序与其它的应用程序间传递Intent来执行动作和产生事件.使用Intent可以激活Android应用的三个核心组件:活动.服务和广播接收器. Intent可以划分成显式意图和隐式意图. 显式意图:调用Intent.setComponent()或Intent.setClass()方法明确指定了组件名的Intent为显式意图,显式意图明确指定了…
显式Intent(Explicit intent):通过指定Intent组件名称来实现的,它一般用在知道目标组件名称的前提下,一般是在相同的应用程序内部实现的. 隐式Intent(Implicit intent):通过Intent Filter来实现的,它一般用在没有明确指出目标组件名称的前提下,一般是用于在不同应用程序之间. 显式: Intent intent=new Intent(MainActivity.this,SettingActivity.class); startActivity(…
一.iptables的基本匹配条件 上一篇博文我们说到了iptables的基本工作原理.数据报文在内核的走向和管理链.管理规则.以及查看规则.导入和导出规则:回顾请参考https://www.cnblogs.com/qiuhom-1874/p/12237976.html,今天我们再来说说iptables的基本匹配条件. iptables的基本匹配条件也叫通用匹配条件,是iptables/netfilter原生自带的,无需加载模块,通俗的讲就是iptables这个命令的原生选项.iptables基…
1:Scala和Java的对比: 1.1:Scala中的函数是Java中完全没有的概念.因为Java是完全面向对象的编程语言,没有任何面向过程编程语言的特性,因此Java中的一等公民是类和对象,而且只有方法的概念,即寄存和依赖于类与对象中的方法.Java中的方法是绝对不可能脱离类和对象独立存在的. 1.2:Scala是一门既面向对象,又面向过程的语言.因此在Scala中有非常好的面向对象的特性,可以使用Scala来基于面向对象的思想开发大型复杂的系统和工程,而且Scala也面向过程,因此Scal…
object func { def main(args:Array[String]):Unit={ //函数赋值给变量时, 必须在函数后面加上空格和下划线. def sayHello(name: String) { println("Hello, " + name) } val sayHelloFunc = sayHello _ sayHelloFunc("leo") //Scala定义匿名函数的语法规则: (参数名: 参数类型) => 函数体 val say…
在selenium-webdriver中等待的方式简单可以概括为三种: 1 导入time包,调用time.sleep()的方法传入时间,这种方式也叫强制等待,固定死等一个时间 2 隐式等待,直接调用implicitly_wait()方法,传入等待时间,比如implicitly_wait(10),就代表最长等待10秒 3 显式等待,导入WebDriverWait和expected_conditions包,调用until()者until_not()方法 下面重点介绍后两种方式 一. 隐式等待:表示在…
MySQL隐式转化整理 前几天在微博上看到一篇文章:价值百万的 MySQL 的隐式类型转换感觉写的很不错,再加上自己之前也对MySQL的隐式转化这边并不是很清楚,所以就顺势整理了一下.希望对大家有所帮助. 当我们对不同类型的值进行比较的时候,为了使得这些数值「可比较」(也可以称为类型的兼容性),MySQL会做一些隐式转化(Implicit type conversion).比如下面的例子: mysql> SELECT 1+'1'; -> 2 mysql> SELECT CONCAT(2,…