Android笔记:Intent的Component使用

简介:

使用components有两种方式:

1
2
3
ComponentName com =  new  ComponentName(MainActivity. this ,MyActivity. class ); //first 
             
ComponentName com =  new  ComponentName( "com.example.testcomponent" , "com.example.testcomponent.MyActivity" ); //second


第二种方式的第二个参数必须写全包名,不然会报错的。

一样的,主Activity中:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
         button.setOnClickListener( new  Button.OnClickListener()
         {
             @Override
             public  void  onClick(View arg0)
             {
                 // TODO Auto-generated method stub
                 Intent intent =  new  Intent();
                 ComponentName com =  new  ComponentName( "com.example.testcomponent" "com.example.testcomponent.MyActivity" );
                 intent.setComponent(com);
                 String s =  "This is a Test." ;
                 intent.putExtra( "id" , s);
                 startActivity(intent);
             }
         });


在目标Ativity中获取数据和上面是一样的,但是,在目标Activity中就可以获取到源目标,知道是从哪儿传递过来的:

1
2
3
4
5
6
7
8
text = (TextView)findViewById(R.id.text);
 
Intent intent = getIntent();
String str = intent.getStringExtra( "id" );
ComponentName com = intent.getComponent();
String pkgName = com.getPackageName();
String className = com.getClassName();
text.setText(str +  "\n"  + pkgName +  "\n"  + className);





本文转自 glblong 51CTO博客,原文链接:http://blog.51cto.com/glblong/1611832,如需转载请自行联系原作者

目录
相关文章
|
2月前
|
Linux 编译器 Android开发
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
在Linux环境下,本文指导如何交叉编译x265的so库以适应Android。首先,需安装cmake和下载android-ndk-r21e。接着,下载x265源码,修改crosscompile.cmake的编译器设置。配置x265源码,使用指定的NDK路径,并在配置界面修改相关选项。随后,修改编译规则,编译并安装x265,调整pc描述文件并更新PKG_CONFIG_PATH。最后,修改FFmpeg配置脚本启用x265支持,编译安装FFmpeg,将生成的so文件导入Android工程,调整gradle配置以确保顺利运行。
137 1
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
|
2月前
|
Unix Linux Shell
FFmpeg开发笔记(八)Linux交叉编译Android的FFmpeg库
在Linux环境下交叉编译Android所需的FFmpeg so库,首先下载`android-ndk-r21e`,然后解压。接着,上传FFmpeg及相关库(如x264、freetype、lame)源码,修改相关sh文件,将`SYSTEM=windows-x86_64`改为`SYSTEM=linux-x86_64`并删除回车符。对x264的configure文件进行修改,然后编译x264。同样编译其他第三方库。设置环境变量`PKG_CONFIG_PATH`,最后在FFmpeg源码目录执行配置、编译和安装命令,生成的so文件复制到App工程指定目录。
90 9
FFmpeg开发笔记(八)Linux交叉编译Android的FFmpeg库
|
2月前
|
Android开发 开发者
Android基础知识:什么是Intent?有哪些类型的Intent?
Android基础知识:什么是Intent?有哪些类型的Intent?
220 0
|
9月前
|
存储 SQL 人工智能
Android Activity启动流程一:从Intent到Activity创建
Android Activity启动流程一:从Intent到Activity创建
|
26天前
|
Java API Android开发
技术经验分享:Android源码笔记——Camera系统架构
技术经验分享:Android源码笔记——Camera系统架构
22 0
|
2月前
|
安全 Linux Android开发
FFmpeg开发笔记(十六)Linux交叉编译Android的OpenSSL库
该文介绍了如何在Linux服务器上交叉编译Android的FFmpeg库以支持HTTPS视频播放。首先,从GitHub下载openssl源码,解压后通过编译脚本`build_openssl.sh`生成64位静态库。接着,更新环境变量加载openssl,并编辑FFmpeg配置脚本`config_ffmpeg_openssl.sh`启用openssl支持。然后,编译安装FFmpeg。最后,将编译好的库文件导入App工程的相应目录,修改视频链接为HTTPS,App即可播放HTTPS在线视频。
65 3
FFmpeg开发笔记(十六)Linux交叉编译Android的OpenSSL库
|
2月前
|
Java 测试技术 开发工具
Android 笔记:AndroidTrain , Lint , build(1),只需一篇文章吃透Android多线程技术
Android 笔记:AndroidTrain , Lint , build(1),只需一篇文章吃透Android多线程技术
|
2月前
|
设计模式 缓存 前端开发
真的强!借助阿里技术博主分享的Android面试笔记,我拿到了字节跳动的offer
真的强!借助阿里技术博主分享的Android面试笔记,我拿到了字节跳动的offer
|
2月前
|
定位技术 Android开发
Intent在Android中的几种用法
Intent在Android中的几种用法
26 1
|
2月前
|
Java Android开发
Android桌面快捷方式图标生成与删除 使用Intent与launcher交互
Android桌面快捷方式图标生成与删除 使用Intent与launcher交互
43 1