Android-隐式意图激活所有应用】的更多相关文章

上篇文章<Android 显示意图激活另外一个Actitity>最后谈到显示意图激活另外一个Actitity会有一些局限性和弊端 本文介绍另一种方法:隐式意图激活另外一个Actitity 实战项目:通过点击按钮实现界面跳转到指定页面 代码比较简单 package com.wuyudong.intent2; import android.net.Uri; import android.os.Bundle; import android.app.Activity; import android.c…
随着api的升级,系统的很多应用包名和类名都改掉了,所以很多时候,打开系统应用的时候会报错,隐式意图就是解决组件之间松耦合,描述动作行为 获取Intent对象,通过new出来 调用Intent对象的setAction(action)方法,设置动作,参数:String类型的常量例如:Intent.ACTION_VIEW 调用Intent对象的setData(data)方法,设置数据,参数:Uri对象, 例如:网址Uri.parse(“http:xxx”); 调用startActivity(inte…
1.smartimageview使用 <LinearLayout 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"…
本文地址:http://www.cnblogs.com/wuyudong/p/5677473.html,转载请注明源地址. <Android 显示意图激活另外一个Actitity>一文介绍了一种激活Activity的方法 本文通过清单文件(AndroidManifest.xml)来实现意图的配置 Intent-filter属性详解 如果一个 Intent 请求在一片数据上执行一个动作, Android 如何知道哪个应用程序(和组件)能用来响应这个请求呢? Intent Filter就是用来注册…
选择模拟器Unknown Google Nexus,在选择system_process(系统进程) 操作模拟器的,操作系统短信应用,让操作系统短信打印日志,来查看: 然后就找到来,操作系统短信应用打印的日志: 然后打开操作系统短信源码进行查看,找到android-5.1.0操作系统源码/package/apps/Mms(短信应用) 查看程序的入口AndroidManifest.xml文件,查找ComposeMessageActivity节点 既然操作系统的短信--发短信界面已经通过intent-…
本文实现一个隐式意图的应用,激活短信应用 public void click4(View view) { Intent intent = new Intent(); intent.setAction("android.intent.action.SENDTO"); intent.addCategory("android.intent.category.DEFAULT"); intent.setData(Uri.parse("sms:119"));…
激活系统的某些应用,并且往应用里面填一些数据,比如说短信应用 打开短信应用,查看logcat,找到ActivityManager, 看到Display.com.android.mms/.ui.ComposeMessageActivity 查看短信源代码的清单文件,可以看到,一个activity节点下面可以有多个intent-filter,一个意图过滤器里面可以设置多个action,category,data满足一个就可以. 测试一下, 获取Intent对象,new出来 调用Intent对象的se…
Intent intent = new Intent(); intent.setAction(Intent.ACTION_VIEW); intent.setData(Uri.parse("http://www.baidu.com/")); startActivity(intent);…
显示意图 简而言之: 通过指定特定Activity的包名和类名开启Activity 应用场景: 一般应用于本App内的activity间的跳转. XML配置信息: AndroidManifest.xml <!--显示意图:举例--> <activity android:name=".activity.intent.IntentOneActivity" android:launchMode="singleTop" android:screenOrie…
阅读Android操作系统的 packages/apps/phone/AndroidManifest.xml,是如何暴露的   AndroidManifest.xml Android操作系统在这里明确指定要这个权限: 我的应用去隐式意图激活,Android操作系统的 packages/apps/phone/ 现在知道为什么,一定要在AndroidManifest.xml里面配置权限了吧 <!-- Android操作系统的 packages/apps/phone/AndroidManifest.x…
显示意图 与 隐式意图 对比 显示意图不能激活多个组件,只能激活一个组件 隐式意图能激活多个组件 显示意图只能在自身应用激活,不能激活其他应用 隐士意图能在自身应用激活,也能激活其他应用 每个应用程序之所以在桌面能显示应用图标,是因为在安装应用的时候,系统会解析以下暴露的节点 点击桌面应用的图标,之所以能启动,是因为系统是采用隐式意图激活:激活的action是:android:name="android.intent.action.MAIN" 每个应用程序都会有,以下隐式意图的暴露:…
显示意图,一般情况下是用于,APP应用自身:组件(Activity,Service,...) 与 组件(Activity,Service,...) 的激活调用: 显示意图,是可以看得到,明确激活哪一个Activity package liudeli.activity.intent; import android.app.Activity; import android.content.ComponentName; import android.content.Intent; import and…
android中的意图有显示意图和隐式意图两种, 显示意图要求必须知道被激活组件的包和class 隐式意图只需要知道跳转activity的动作和数据,就可以激活对应的组件 A 主activity  B 接收跳转的activity 步骤 1:在主配置文件中声明B 至少要声明一个android:name属性 [html] <activity            android:name=".DemoActivity"            android:label="@…
Android基本的设计理念是鼓励减少组件间的耦合,因此Android提供了Intent (意图) ,Intent提供了一种通用的消息系统,它允许在你的应用程序与其它的应用程序间传递Intent来执行动作和产生事件.使用Intent可以激活Android应用的三个核心组件:活动.服务和广播接收器. Intent可以划分成显式意图和隐式意图. 显式意图:调用Intent.setComponent()或Intent.setClass()方法明确指定了组件名的Intent为显式意图,显式意图明确指定了…
意图在android的应用开发中是很重要的,明白了意图的作用和使用后,对开发会有很大帮助.如果没有把意图搞懂,以后开发应用会感觉缺些什么.        意图的作用:        1.激活组件         2.携带数据        3.意图的匹配(运用到隐式意图)         android基本的设计理念是鼓励减少组件间的耦合,因此android提供了Intent(意图),用意图激活其他组件.Intent提供了一种通用的消息系统,它允许在你的应用程序与其他应用程序间传递Intent来…
Intent intent=new Intent(LoginActivity.this, MainActivity.class);//显示意图启动,显示从一个activity到另一个activity, 隐示意图启动activity,不显示activity名字,而通过一个action或者category一个字符串,跨应用程序启动另一个应用程序的activity只能用隐示意图启动, Main.xml <LinearLayout xmlns:android="http://schemas.and…
Intent(意图)主要是解决Android应用的各项组件之间的通讯. Intent负责对应用中一次操作的动作.动作涉及数据.附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用. 因此,Intent在这里起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦. 例如,在一个联系人维护的应用中,当我们在一个联系人列表屏幕(假设对应的Activity为listActivity)上,点击某个…
1.显式意图 可以直接通过名称开启指定的目标组件: 通过构造方法Intent(Context packageContext,class<?>cls)来实现. button_1 = (Button) findViewById(R.id.button_1); button_1.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View view) { // finish(); //显示意图 In…
调用系统应用解析(必需要加各自使用的权限)  android intent 隐式意图和显示意图(activity跳转) 显示意图要求必须知道被激活组件的包和class 隐式意图仅仅须要知道跳转activity的动作和数据,就能够激活相应的组件 A 主activity  B 接收跳转的activity 步骤 1:在主配置文件里声明B 至少要声明一个android:name属性 [html]  <activity             android:name=".DemoActivity&…
//显式意图  :必须指定要激活的组件的完整包名和类名 (应用程序之间耦合在一起) // 一般激活自己应用的组件的时候 采用显示意图  //隐式意图: 只需要指定要动作和数据就可以 ( 好处应用程序之间没有耦合) //激活别人写的应用  隐式意图, 不需要关心对方的包名和类名    public void enter(View view){  String name = et_name.getText().toString().trim();  if(TextUtils.isEmpty(name…
隐式意图是通过指定一组动作或者属性实现,主要用于跨应用使用. 1.创建一个意图对象 Intent intent = new Intent(); 2.设置意图过滤器 intent.setAction("android.intent.action.testActivity"); //对应于action intent.addCategory("android.intent.category.DEFAULT");//对应于category intent.setData(Ur…
在我们想往下一个页面传递数据时,要想到显式意图和隐式意图,显示意图用于内部活动跳转时比较方便,而隐式意图用于应用程序中外部活动的跳转时较为方便,在使用隐式意图时我们要想到清单文件 代码如下: <intent-filter> <action android:name="xx,xx,xx,xx"/> <category android:name="android.intent.category.DEFAULT"/> </inte…
 该漏洞涉及到app所使用的intent和intent filter. intent是一个可用于从一个app组件请求动作或处理事件的“消息对象”.Intent负责对应用中一次操作的动作.动作涉及数据.附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用. intent主要包括隐式意图和显式意图.调用Intent.setComponent()或Intent.setClass()方法明确指定了组件名的Intent为显式意图…
Intent(意图)主要是解决Android应用的各项组件之间的通讯.Intent负责对应用中一次操作的动作.动作涉及数据.附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用.因此,Intent在这里起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦.例如,在一个联系人维护的应用中,当我们在一个联系人列表屏幕(假设对应的Activity为listActivity)上,点击某个联系人…
Android 隐式intent相信大家都有用过,大部分场景我们用显式intent已经能满足我们的业务需求,隐式intent大部分都是用来启动系统自带的Activity或Service之类的组件.昨天有个业务场景就是,module app依赖于第三方依赖库module library,我在module library里面有个Activity A,现在需要在Activity A里面启动 module app里面的Activity B.一般的解决方法是:让module library依赖于modul…
想让第一个activity把第二个activity打开的话,在清单文件里面声明一下并且 右键Debug As Android Application居然没有报错 mimeType  讲HTML的时候就讲过的对应的一个响应头.setContentType("text/html").这个实际上就是一个mime. 通过mime就可以说明当前这个activity可以处理的数据.我当前这个activity接收什么样类型的数据?所以mime就是用来说明我当前应用可以处理的媒体类型都有哪些?可以打开…
一.通过显式意图来实现Activity间的跳转 显式意图是指在创建Intent对象时就指定接受者组件 /** * 下面是通过显式意图进行跳转,即明确写出要跳转到SecondActivity.class组件中去 */ Intent intent =new Intent(this,SecondActivity.class); intent.putExtra("account",account); intent.putExtra("password",password);…
一.显式意图来跳转到第三方应用 /** * 这个方法会在点击按钮的时候执行 * @param view */ public void skip2Browser(View view){ Log.d(TAG,"skp2Browser"); Intent intent =new Intent(); /** * 組件的名称,也就是ComponentName =包名/类的路径名称,如包名一直,类的路径名称可以省略包名 * 如:com.google.android.as/com.google.an…
1 隐式意图     通过指定一组动作或者数据 开启activity   2 显示意图    通过指定具体包名和类名 开启activity       总结    (1)显示意图更加安全一些    (2)开启自己应用的界面用显示意图(不需要配置意图过滤器)    (3)隐式意图一般开启系统应用(电话拨号器 短信的发送器等等)的界面…
转载本专栏文章,请注明出处,尊重原创 .文章博客地址:道龙的博客 本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 本篇文章,对隐式启动Activity再做分析. 有些人可能会说了,隐式启动活动不是很简单吗?这有什么不理解的?话先别说的这么早,对于隐式启动,还是具有很大的坑要爬的,当然,您如果是一个资深开发者就另当别论了. 本篇文章,我们从最简单的开始,一步步引入,相信这样的方式,读起来也会轻松一些. 我们平时启动一个活动,会通过两种方式.1.显示启动:2.隐式启动. (一)首…