Android应用分享功能是一般应用所必不可少到功能。
一般有以下三种方式。
- 调用系统Activity进行分享
- 根据第三方App的包名和类名直接启动
- 注册第三方app账号,集成sdk
###1.调用系统Activity进行分享
这种方式最为简单,但是有些分享软件的高级功能无法使用。
分享一般分为图片,文字,或者图片文字混合的分享。
- 分享文字
1 | Intent intent= new Intent(Intent.ACTION_SEND); |
- 分享图片
1 | Intent shareIntent = new Intent(); |
- 分享多张图片
1 | ArrayList<Uri> imageUris = new ArrayList<Uri>(); |
- 同时分享文字和图片
1 | Intent intent = new Intent(Intent.ACTION_SEND); |
###2.根据第三方App的包名和类名直接启动
根据第三方包名直接启动,可以自定义界面,同时也不需要任何sdk,节省apk空间大小。缺点是,万一第三方app更新类名或者增加了某些特殊限制,这一方法也将会失效。
- 获取可分享app的包名和activity名
1 | List<ResolveInfo> mApps = new ArrayList<ResolveInfo>(); |
- 传递数据到第三方app
1 | try { |
###3.注册第三方app账号,集成sdk
这种是最常用的方法,参考官方sdk即可。虽然麻烦了点,但是是最可靠的方法。