android-一条关于安卓开发Intent的问题

问题描述

一条关于安卓开发Intent的问题

显式Intent和隐式Intent分别在什么时候用?隐式Intent里的setAction(·····)里的参数是不是只能是Action_MAIN,Action_VIEW等参数,而不能是自己随便弄的一个字符串second,fantastic等字符串?隐式Intent是不是只能启动系统Activity?求大神帮忙解答

解决方案

隐式意图是不指定跳转的activity或者receiver,用action开过滤,先示意图直接指定!隐式意图可以用来调用系统的功能,也可以自己写过滤,自己写action。

解决方案二:

   显式Intent:通过指定Intent组件名称来实现的,它一般用在知道目标组件名称的前提下,一般是在相同的应用程序内部实现的。一个Android应用程序中需要多个屏幕,即是多个Activity类,并且在这些Activity之间进行切换通过Intent机制来实现的。在同一个应用程序中切换Activity时,通常都知道要启动的Activity具体是哪一个,因此常用显式的Intent来实现的。
   隐式Intent:通过Intent Filter来实现的,它一般用在没有明确指出目标组件名称的前提下,一般是用于在不同应用程序之间。需要AndroidManifest.xml中增加Activity的声明,并设置对应的Intent Filter过滤和Action,才能被Android的应用程序框架所匹配。
        对于显示Intent,Android不需要再去做解析,因为目标组件很明确。Android需要解析的是隐式Intent,通过解析,将Intent映射给可以处理该Intent的Activity,Service等。Intent的解析机制主要是通过查找已经注册在AndroidManifest.xml中的所有IntentFilter以及其中定义的Intent,最终找到匹配的Intent。

解决方案三:

http://www.cnblogs.com/windwithlife/archive/2009/07/17/1525385.html

解决方案四:

显式一般用在一个应用中,因为名称你都知道,所以直接显示调用就行。
隐式一般是用在一个应用需要调用其他应用帮它服务,此时只能用隐式调用。
当然隐式也会用在一个应用中,比方说,我们自己在写一些例子时,你不可能每个例子都去创个工程,一般是建一个工程,里面包含所有的例子。然后通过列表的形式展现出来,这个列表,我总不可能一个个去设置intent,直接用隐式,就可以得到有哪些activity,然后以列表形式呈现,这样,代码就简单了

时间: 2024-11-01 06:52:23

android-一条关于安卓开发Intent的问题的相关文章

代码-一条关于安卓开发Intent的问题

问题描述 一条关于安卓开发Intent的问题 MainActivity的代码 package black_lotus.blacklotus; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.widget.*; import android.view.View.OnClickListener; import android.view.View; impor

acitivity-一条关于安卓开发的问题

问题描述 一条关于安卓开发的问题 我创建了两个Fragment,在MainAcitivity里分别用两个按钮去启动它们,代码如下:public class MainActivity extends Activity { @Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Bu

android java-【急】安卓开发·创建安卓模拟器遇到问题

问题描述 [急]安卓开发·创建安卓模拟器遇到问题 小白一只..配置了各种变量之后创建安卓模拟器,创到一半卡住了.卡住的步骤见下图.画圈的选项为什么没法选?没法选就没法下一步啊. 怎么办呐?求各位前辈解答. 解决方案 解决方案二: 不要用这个模拟器 去下个genymotion 模拟器 那个好用 解决方案三: 尽量不要用AVD,用真机测试

java-求问安卓开发关于对话框的一条问题

问题描述 求问安卓开发关于对话框的一条问题 安卓开发public void onClick(DialogInterface dialog,int which)中的which代表什么? int类型的参数which代表什么?有什么用? 解决方案 which代表点击的按钮的索引,因为你 可以添加其他按钮 解决方案二: which表示按钮的id,通过判断id来对不同的按钮响应不同的事件~·

安卓开发中intent参数设置的问题?

问题描述 安卓开发中intent参数设置的问题? 比如intent =new intent(), 之后设置了intent.setData(uri),uri是一个xmpp的连接信息:/yangyang%40192.168.0.166%2FandroidN1amkysF,用setresult启动这个intent,不理解这个intent有什么用?没有设置action的话能用吗? 解决方案 intent意图的意思,你可以用它来告诉android需要做的事情,比如启动另外一个activity,携带数据,不

android开发-安卓开发中程序不能开机自启动问题

问题描述 安卓开发中程序不能开机自启动问题 已经设置该程序为系统程序 使用了广播方法` public class BootBroadcastReceiver extends BroadcastReceiver { static final String action_boot="android.intent.action.BOOT_COMPLETED"; @Override public void onReceive(Context context, Intent intent) {

求问大神一条安卓开发的问题

问题描述 求问大神一条安卓开发的问题 我写的一个app,每次打开后占用的内部存储空间都会成倍增长,但是我这只app并没有联网,在运行的时候并没有增加任何数据,只是每次打开时都从数据库里把一些图片,文字读出来并赋值,一开始的时候是2m多,按后退键退出后再打开,然后再退出,占了3m多,然后重复这样打开退出打开退出,每次app的占用内部存储空间都近乎两倍来增长,最后占了57m多的时候,就提示说出现oom了,请问这是怎么回事?为什么我没有往里面添加数据,它都会疯狂增长? 我从数据库里读取数据的时候使用a

android开发-安卓开发中read-only file system

问题描述 安卓开发中read-only file system android模拟机上不能加文件提示read only file system 是什么问题啊 mount -o remount ,rw /都试过了 ,没什么用额. 使用重新挂载还是无用 mount -o remount,rw rootfs /system/ mount -o remount,rw rootfs /system/ cd sdcard cd sdcard mkdir a mkdir a mkdir failed for

安卓开发-android项目中一个Activity一般配一个xml文件,什么情况下配多个xml文件呢

问题描述 android项目中一个Activity一般配一个xml文件,什么情况下配多个xml文件呢 android项目中一个Activity一般配一个xml文件,什么情况下配多个xml文件呢 有没有Activity不需要xml文件的情况呢 解决方案 多个xml一般是需要适配不同大小的屏幕,安卓会根据屏幕大小自动加载不同size的屏幕的xml,安卓开发是mvc结构,activity一定需要一个view,通常是需要xml做view,但是也可以自定义一个view然后activity加载这个view