最近公司项目集成了融云,需求是系统相册图片或者截图,分享列表中有自己应用,并且可以分享到融云用户。
1.首先在目标页面的mainfast.xml之中设置
<activity
android:name=".im.activity.ContactListActivity"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="这个是在main设置的action"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
<!--以下配置是在目标页面中配置,可以实现分享列表出现自己应用-->
<!--本次主要介绍图片类的分享,其他文件同样步骤-->
<intent-filter android:label="@string/app_name">
<action android:name="android.intent.action.SEND"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:mimeType="image/jpeg"/>
</intent-filter>
<intent-filter android:label="@string/app_name">
<action android:name="android.intent.action.SEND"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:mimeType="image/png"/>
</intent-filter>
</activity>
2.在目标接收页面做接收处理
/**
* 外部分享的文件
*/
private void getShareImageUri() {
Intent itnIn = getIntent();
Bundle extras = itnIn.getExtras();
String action = itnIn.getAction();
if (Intent.ACTION_SEND.equals(action)) {
if (extras.containsKey(Intent.EXTRA_STREAM)) {
try {
Uri imageUri = extras.getParcelable(Intent.EXTRA_STREAM);
// 返回路径
imsgeUrl = UriUtil.getRealPathFromURI(ContactListActivity.this, imageUri);
Bundle bun = new Bundle();
bun.putString("Type", imsgeUrl);
LoginInterceptor.interceptor(this, "这个是在main设置的action", bun);
} catch