温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

componentname怎么用

发布时间:2021-09-22 14:47:20 来源:亿速云 阅读:226 作者:小新 栏目:开发技术

这篇文章主要介绍componentname怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

  ComponentName,顾名思义,就是组件名称,通过调用Intent中的setComponent方法,我们可以打开另外一个应用中的Activity或者服务。

  如何实例化一个ComponentName

  实例化一个ComponentName需要两个参数,第一个参数是要启动应用的包名称,这个包名称是指清单文件中列出的应用的包名称:

  第二个参数是你要启动的Activity或者Service的全称(包名+类名),代码如下:

  启动一个Activity:

  Intentintent=newIntent();

     intent.setComponent(newComponentName("com.example.otherapp",

       "com.example.otherapp.MainActivity2"));

     startActivity(intent);

  ComponentName使用

  ComponentName:可以启动其他应用的Activity、Service.

  ComponentNamechatActivity=newComponentName(param1,param2);

  param1:Activity、Service所在应用的包名

  param2:Activity、Service的包名+类名

  Activity:

  ComponentNamechatActivity=newComponentName("com.npf.chat","com.npf.chat.ui.ChatActivity");

  Intentintent=newIntent();

  intent.setComponent(chatActivity);

  startActivity(intent);

  Service:

  ComponentNamechatService=newComponentName("com.npf.chat","com.npf.chat.ui.ChatService");

  Intentintent=newIntent();

  intent.setComponent(chatService);

  startService(intent);

  注:

  如果该Activity非应用入口(入口Activity默认android:exported="true"),则需要再清单文件中添加android:exported="true"。Service也需要添加android:exported="true"。允许外部应用调用。

以上是“componentname怎么用”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI