我们将在活动中实现点击按钮后打开ChooserActivity的逻辑。 1. 在MainActivity.java中添加按钮和点击事件 首先,在activity_main.xml中加入一个按钮: <Buttonandroid:id="@+id/launchChooserButton"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="选择打开应用"/> 1. 2. 3....
><manifestxmlns:android="http://schemas.android.com/apk/res/android"package="com.example.activitydemo"android:versionCode="1"android:versionName="1.0"><uses-sdkandroid:minSdkVersion="8"android:targetSdkVersion="19"/><applicationandroid:allowBackup="true"android:icon="@drawable/ic_launcher"android:...
这是一种单实例模式,在这种模式下,只要Activity在一个栈中存在,那么多次启动此Activity都不会创建实例,和 singleTop 一样,系统也会回调 onNewIntent. 简单理解为,当启动一个 启动模式为 singleTask的Activity时,系统会再栈里寻找是否存在此Activity,如果找到,将此Activity顶部的所有Activity全部出栈,并把其调到栈顶并...
setResult(Activity.RESULT_OK, intent); finish(); } 这下很明白了,咱们点击列表项的时候,它没有用intent启动相应的activity,而是将它返回了。这就是它与Intent.ACTION_CHOOSER action的区别所在。同样地,咱们也可以从源代码里找到Intent.ACTION_CHOOSER的真实处理流程。跟上面流程差不多,到源码里搜索“android.inten...
ACTION_CHOOSER【android.intent.action.CHOOSER】显示一个Activity选择器ACTION_GET_CONTENT【android.intent.action.GET_CONTENT】让用户选择数据,并返回所选数据。ACTION_DIAL【android.intent.action.DIAL】显示拨号面板 2 ACTION_CALL【android.intent.action.CALL】直接向指定用户打电话ACTION_SEND【android.intent....
首先要触发文件选择,startActivityForResult调用aFileChooser已经提供好的选择器: Intent getContentIntent = FileUtils.createGetContentIntent(); Intent intent = Intent.createChooser(getContentIntent, "用aFileChooser选择文件"); startActivityForResult(intent, REQUEST_CHOOSER); ...
startActivityAsCaller[ForResult] - 以调用者(即启动本当前 Activity 的 APP)的身份启动应用,也是个隐藏接口,主要用于 resolver 和 chooser Activity; 这些接口的实现都和上面代码类似,即最终都会调用到 Instrumentation 的接口。 Instrumentation Instrumentation 类主要作用是实现代码追踪的一个收口,当启用跟踪时,该类会...
startActivity(chooser); } 这样防止匹配不到而导致崩溃... ///< 发短信 Uri sms_uri= Uri.parse("smsto:13517596490"); Intent intent = new Intent(Intent.ACTION_SENDTO) ; if (intent.resolveActivity(getPackageManager()) == null) { Toast.makeText(this, "空啦,你个sb,没sms_uri", Toast.LENG...
为了显示chooser, 需要使用createChooser()来创建Intent,这样就可以列出可以响应createChooser()中Intent的app,并且指定了标题。 接收Activity返回的结果 在执行startActivityForResult()时,可以使用explicit 或者 implicit 的intent。当启动另外一个位于的程序中的activity时,我们应该使用explicit intent来确保可以接收到期待的结...
startActivity(chooser); } 接收隐式Intent(Receiving an Implicit Intent) 通过在manifest文件中配置intent-filter标签中的action,data, andcategory,可以设置筛选信息,只有同时符合上述三个标签设置的筛选信息,Intent才能开启您的应用程序组件: action标签: 可匹配Intent中的action参...