在一些API中,你会在接口/类中看到这个名称,例如Servlet的ServletContext、JSF的FacesContext、Spring的ApplicationContext、Android的Context...这个action ,而标签则包含了一些附加信息,更精确地指明了当前的活动能够响应的Intent 中还可能带有的category 。...ACTION_VIEW , smsUri); returnIt.putExtra( "sms_body" , "shenrenkui" ); returnIt.setType( "vnd.android...这个方法在活动准备好和用户进行交互的时候调用。此时的活动一定位于返回栈的栈顶,并且处于运行状态。 onPause()。这个方法在系统准备去启动或者恢复另一个活动的时候调用。...这个参数在一般情况下都是null,但是如果在活动被系统回收之前有通过onSaveinstanceState()方法来保存数据的话,这个参数就会带有之前所保存的全部数据。
Android的Intent类中提供了很多内置的类别定义,一中类别代表一个意思,可以参考说明使用。。...比如android.intent.category.LAUNCHER标表示你的应用会展示在启动列表页面,经常和android.intent.action.MAIN搭配使用 下面通过一个例子来说明Category...飞雪无情 * @since 2011-3-14 */ public class IntentsTestList extends ListActivity { private String ACTION_VIEW...startActivity(intent); }else{ sendBroadcast(intent); } } /** * 返回...但是intent-filter的可以有额外的Category .再次提醒: Android对所有传递给 Context.startActivity()的隐式intent至少包含”android.intent.category.DEFAULT
Android系统的一个重要特性就是一个应用程序可以调用另外一个应用程序来完成用户的请求动作。...下面是附带数据的Intent例子: 发送带有附件的Email: Intent emailIntent = new Intent(Intent.ACTION_SEND); // The intent does...比如你想打开一个图片通过ACTION_VIEW intent,你应该设置MIME 类型为"image/*",这样就可以阻止调用到其他类型的应用程序,比如地图应用,而是明确只有能查看图片的应用程序才能响应这个...你可以调用queryIntentActivities()方法来验证Intent是否会有Activity响应,queryIntentActivities()返回一个能够响应该Intent的Activity...= null) { startActivity(chooser); } 上面的例子会弹出一个包含很多应用的Dialog,这些应用都是能够响应这个Intent的应用。----
Action Intent常量 常量名称 常量值 意义 ACTION_MAIN android.intent.action.MAIN 应用程序入口 ACTION_VIEW android.intent.action.VIEW...说明 ACTION_VIEW content://contacts/people/1 显示id为1的联系人信息 ACTION_DIAL content://contacts/people.../1 将id为1的联系人电话号码显示在拨号界面中 ACITON_VIEW tel:123 显示电话为123的联系人信息 ACTION_VIEW http://www.google.com...在浏览器中浏览该网站 ACTION_VIEW file://sdcard/mymusic.mp3 播放MP3 ACTION_VIEW geo:39.2456,116.3523 显示地图...手机的Brower则能匹配它,在Brower的Manifest.xml中的IntenFilter中 首先有ACTION_VIEW Action,也能处理http:的type, 3, 至于分类Category
正文 这么流弊的DeepLink是不是非常的难?其实DeepLink的基本实现是简单到不可思议,他的核心思想实际上是Android的隐式启动。...= "android.intent.action.VIEW"; 官方的注释说明ACTION_VIEW表示展示数据的页面,系统默认的Action就是ACTION_VIEW。...添加上ACTION_VIEW,再次点击打开app。...id=111 客户端接收key为id的参数的方法: if (intent != null && intent.data !...= null) { Log.e("lzp", intent.data.getQueryParameter("id")) } 如果只是接收参数的话,客户端不需要进行任何修改,但是这里有一种情况
我们正在 Android 平台上进行多项变更来增强用户隐私和平台安全性,旨在为用户提供更安全的体验。...以 Android 11 (API 级别 30) 或更高版本为目标的应用默认将只能获取 过滤后的已安装应用列表。...如需访问过滤后列表以外的应用,则需要在应用内的 Android manifest 中使用 元素声明需要与之交互的应用。本文将介绍适应此特性的最佳实践。...try { val intent = Intent(ACTION_VIEW, Uri.parse(url)).apply { addCategory(CATEGORY_BROWSABLE...,您可以参阅以下资源: 文档: 软件包可见性 Android 11 中的软件包可见性 乐享编码!
当使用Activity.startActivityForResult()启动一个Activity时,可以使用Activity.setResult()返回一些结果信息,可以在Activity.onActivityResult...() 中得到返回的结果....Filter值只设置了Action", Toast.LENGTH_SHORT).show(); } },new IntentFilter(ACTION_VIEW...startActivity(intent); }else{ sendBroadcast(intent); } } /** * 返回...addItem(data, "Action检测-Broadcast", new Intent(ACTION_VIEW),false); return data; } /*
意图结构 意图的主要信息是: 动作要被执行的一般操作,如-,ACTION_VIEW等。...,然后在其中的一些数据,并返回结果的URI给调用者。...-例如,标准ACTION_VIEW被称为“android.intent.action.VIEW”。...android.intent.category.DEFAULT 该过滤器描述了向用户返回由用户选择的笔记的能力,而不需要知道其来自何处。...串 ACTION_PACKAGE_DATA_CLEARED 广播动作:用户清除了一个包的数据。 串 ACTION_PACKAGE_INSTALL 这个常量在API级别14中被弃用。
对于首次听说 instant 应用的人,可以查看 Android 开发者峰会上的会话,或者之前发布的与该话题有关的阅读文档。 ?...升级 Android Gradle 插件来匹配 Android Studio 的版本也是非常重要的。...除了与 Play 商店绑定的机制之外,启动 instant 应用通常是通过将 ACTION_VIEW 发送到 URL 路径所对应的对象,这个 URL 在我们的清单文件中以 intent filter 的形式来定义.../uamp" 复制代码 然而,Android 系统也会建议通过其他应用触发 ACTION_VIEW 对应的 URL 路径来启动我们的应用,这基本上适用于除了 web 浏览器外的所有应用。...已知问题 对于运行 API 28 版本的设备(模拟器),当我们清除菜单上 Deploy as Instant app 选择按钮并试图再次部署时,会报如下的错误: Error while executing
*/ @SdkConstant(SdkConstantType.ACTIVITY_INTENT_ACTION) public static final String ACTION_VIEW...* * @return 返回相同的Intent对象,用于链接多个调用 * 变成一句话。...* 如果保留默认值null,则将考虑所有应用程序中的所有组件。 * 如果非null,则意图只能匹配给定应用程序包中的组件。...* * @param packageName要处理的应用程序包的名称 * 或null以允许任何应用程序包。...* * @return返回相同的Intent对象,用于链接多个调用 * 变成一句话。
为了更好地 "问责" 访问已安装应用的行为,默认情况下,以 Android 11 为目标平台 (目标 API level 为 30) 的应用默认将只能检测到部分过滤后的已安装应用。...try { val intent = Intent(ACTION_VIEW, Uri.parse(url)).apply { // 非浏览器应用会直接处理该 URL(默认情况下)...您可以将 API Level 设为 30,并使用 Android Studio 3.2 以上和最新发布的相应 Android Gradle 插件,即可在应用中添加 元素。...Android Studio 和 Gradle 对该功能的支持 如果您使用的 Android Gradle 插件版本是 4.1 和以上版本的话,就可以正常使用新的 元素,因为旧版本的 Gradle 插件并不兼容此元素...请查阅以下资源: Android 11 中的软件包可见性文档 Android Gradle 插件版本说明
ACTION_VIEW:系统根据不同的Data类型,通过已注册的对应Application显示数据。 ...ACTION_BOOT_COMPLETED:Android系统在启动完毕后发出带有此Action的广播(Broadcast)。 ...ACTION_TIME_CHANGED:Android系统的时间发生改变后发出带有此Action的广播(Broadcast)。 ...ACTION_PACKAGE_ADDED:Android系统安装了新的Application之后发出带有此Action的广播(Broadcast)。 ...ACTION_PACKAGE_REMOVED:卸载了Android系统已存在的Application之后发出带有此Action的广播(Broadcast)。
这个方法相信所有做过Android的开发者都用过,它主要是用于在两个Activity之间交换数据的。 那么为什么这个如此常用的方法会被废弃呢?...null } } 我们通过泛型指定,这个Contract的输入参数是Void,输出参数是一个字符串。...最后在parseResult()方法中,我们对SecondActivity返回的结果进行解析,并将解析出来的字符串作为输出参数返回。...另外,我们也不需要再去手动解析SecondActivity返回的数据,lambda表达式上的参数就是解析出来的结果了。...如果想要学习Kotlin和最新的Android知识,可以参考我的新书 《第一行代码 第3版》,点击此处查看详情。
对于首次听说 instant 应用的人,可以查看 Android 开发者峰会上的会话,或者之前发布的与该话题有关的阅读文档。...升级 Android Gradle 插件来匹配 Android Studio 的版本也是非常重要的。...除了与 Play 商店绑定的机制之外,启动 instant 应用通常是通过将 ACTION_VIEW 发送到 URL 路径所对应的对象,这个 URL 在我们的清单文件中以 intent filter 的形式来定义.../uamp" 然而,Android 系统也会建议通过其他应用触发 ACTION_VIEW 对应的 URL 路径来启动我们的应用,这基本上适用于除了 web 浏览器外的所有应用。...已知问题 对于运行 API 28 版本的设备(模拟器),当我们清除菜单上 Deploy as Instant app 选择按钮并试图再次部署时,会报如下的错误: Error while executing
这个方法相信所有做过Android的开发者都用过,它主要是用于在两个Activity之间交换数据的。 那么为什么这个如此常用的方法会被废弃呢?...既然有更好的API,那么就不再建议去使用过去老旧的API,所以才把startActivityForResult()方法标为了废弃。...null } } 我们通过泛型指定,这个Contract的输入参数是Void,输出参数是一个字符串。...最后在parseResult()方法中,我们对SecondActivity返回的结果进行解析,并将解析出来的字符串作为输出参数返回。...另外,我们也不需要再去手动解析SecondActivity返回的数据,lambda表达式上的参数就是解析出来的结果了。
通过Intent,你的程序可以向Android表达某种请求或者意愿,Android会根据意愿的内容选择适当的组件来完成请求。...Android的三个基本组件——Activity,Service和Broadcast Receiver——都是通过Intent机制激活的,不同类型的组件有不同的传递Intent方式。...之间传递数据,就要在intent中包含相应的内容,一般来说数据中最基本的应该包括: •Action:用来指明要实施的动作是什么,比如说ACTION_VIEW, ACTION_EDIT...不同的Action所对应的Data属性内容也各不相同 •ACTION_CALL所对应的Data通常是“tel:”开头的 •ACTION_VIEW...resultCode为返回结果的结果编码,用于标识结果类型 •参数data为返回的数据 接收数据返回 启动者的启动调用示例 startActivityForResult
Action Action常量 对应字符串 简单说明 ACTION_MAIN android.intent.action.MAIN 应用程序入口 ACTION_VIEW android.intent.action.VIEW...编辑指定数据 ACTION_PICK android.intent.action.PICK 从列表中选择某项并返回所选的数据 ACTION_CHOOSER android.intent.action.CHOOSER...显示一个Activity选择器 ACTION_GET_CONTENT android.intent.action.GET_CONTENT 让用户选择数据,并返回所选数据 ACTION_DIAL android.intent.action.DIAL...执行Web搜索 ACTION_FACTORY_TEST android.intent.action.FACTORY_TEST 工厂测试的入口点 Category Category 常量对应字符串 简单说明...CATEGORY_DEFAULT android.intent.category.DEFAULT 默认的Category CATEGORY_BROWSABLE android.intent.category.BROWSABLE
文章目录 一、目前的 API 现状 二、安装应用源码分析 1、安装按钮执行的操作 2、返回到 HomeActivity 执行的操作 一、目前的 API 现状 ---- 下图是 VirtualApp 官方给出的集成...VirtualApp 的步骤 , 这个 API 目前跑不通 , 应该是最新的商业版的使用 API ; 当前的开放源码是 2017 年底的源码 , 好在源码 , 可以从源码中查找 API ; 二、...().setResult 返回到上一个界面 , 带着数据进入到上一个界面 , 也就是 HomeActivity 的 public class ListAppFragment extends VFragment.../app-debug.apk , fastOpen : false 在 adb shell 中查看 , 该应用在 SD 卡根目录 ; 2、返回到 HomeActivity 执行的操作 使用的 MVP...模式 ; 返回的时候 , 获取到 AppInfoLite 集合 , 逐个遍历安装应用 ; mPresenter.addApp(info); 实际上调用的是 io.virtualapp.home.HomePresenterImpl
Intent类的系统动作常量名 系统动作的常量值 说明 ACTION_MAIN android.intent.action.MAIN App启动时的入口 ACTION_VIEW android.intent.action.VIEW...剩下符合条件的优先顺序调用,其中创建一个Android工程,AndroidManifest.xml里的intent-filter就是XML中的过滤器。...其中,android.intent.action.MAIN表示App的入口动作,android.intent.category.LAUNCHER表示在App启动时调用。...bundle = new Bundle(); bundle.putString("name","张三"); bundle.putInt("age","30...后一个页面在返回前一个页面时,打包应答数据并调用setResult方法返回信息。
因为下载功能比较常用,而且业务功能相对统一,所以从Android 2.3(API level 9)开始,Android提供了DownloadManager用于统一管理下载功能。...该方法返回本次下载任务的编号。 remove : 取消指定编号的下载任务。 restartDownload : 重新下载指定编号的任务。...该方法的输入参数是一个Query对象,返回结果集的Cursor游标,有关Cursor的用法参见《Android开发笔记(三十一)SQLite游标及其数据结构》。...下载未完成时点击,触发的是系统广播DownloadManager.ACTION_NOTIFICATION_CLICKED;下载完成后点击,触发的是系统的ACTION_VIEW即浏览页,该动作由系统根据媒体类型去寻找对应的程序来打开...private void initPaint() { mPaint = new Paint(); mPaint.setColor(Color.BLACK); mPaint.setTextSize(30