Intent(意图)主要是解决Android应用的各项组件之间的通讯。
Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。
因此,Intent在这里起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦。(此处省略N个字。。。。。。)。
没事找百度
就是说,Intent不光能开启本应用的其他界面,同样能打开手机上其他应用的界面,只要方法正确,everything will be true。
实践出真知,接下来就是见证奇迹的时刻。
首先确定一点,如何通过Intent,从一个应用打开另一个应用。就如我们经常看到的应用图标,手机桌面也是一个应用。所有安装的应用图标,都再桌面应用程序内。所以,从一个应用跳转到另一个应用的事情,我们每天都在做,比如打电话,比如发短信,QQ,微信,陌陌,豆瓣。。(此处继续省略N个字,博主经验有限,还需要跟大家多多探讨。学海无涯,回头是岸。)
PS:有更好的东东私聊给我!!
首先看Intent是如何做到这一点的,intent.setClassName("com.view","com.view.B");前者参数是包名,后者参数是该包种要打开的activity类界面的全名。找到微信的朋友分享界面为
com.tencent.mm.ui.tools.ShareImgUI
所以,简单包装一下,跳转到微信朋友分享的界面的代码就是Intent intent = new Intent();
ComponentName componentName = new ComponentName("com.tencent.mm", "com.tencent.mm.ui.tools.ShareImgUI");
intent.setComponent(componentName);
intent.setAction(Intent.ACTION_SEND);
startActivity(intent);
我跳,我跳,我跳跳跳。。才发现界面下面有Toast提示。
好吧,分享嘛,就要有分享数据,不然分享啥呢。哈哈。微信真是太聪明了。还是老老实实的加上数据吧。于是乎一番折腾。有了下面的方法。
private void toFriend(String text,File file) {
Intent intent =