Android Chrome仅分享屏幕截图

时间:2016-05-11 12:50:35

标签: android google-chrome share

我想通过Android上的Chrome将当前网址分享到我的应用。我已经注册了share-intent和share-filter。到目前为止,我得到了一个共享截图,但不是网址。我做错了什么?

清单文件

<activity
        android:name=".activity.share.ShareActivity"
        android:label="@string/app_name"
        android:theme="@style/Theme.AppCompat.Light">
        <!-- Parent activity meta-data to support API level 7+ -->
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".activity.main.MainActivity" />
    <intent-filter>
        <action android:name="android.intent.action.SEND" />
        <category android:name="android.intent.category.DEFAULT" />
        <data android:mimeType="text/plain" />
    </intent-filter>

这是ShareActivity类

中方法中使用的代码段
public URI shareUriFromIntent() {
    Intent intent = getIntent();
    String action = intent.getAction();
    String type = intent.getType();
    if (type != null && "text/plain".equals(type)) {
        ClipData data = intent.getClipData();
        for (int i = 0; i < data.getItemCount(); i++) {
            ClipData.Item item = data.getItemAt(i);

//breakpoint: output> ClipData { text/uri-list "" {U:content://com.android.chrome.FileProvider/images/screenshot/1462970510861-711948848.jpg} }

                if (item.getText() != null) {
                    String shareText = item.getText().toString();
                    if (shareText.contains("http:/")
                            || shareText.contains("https:/")) {
                        shareText = shareText.substring(shareText.indexOf("http"));
                        return URI.create(shareText); 
                    }
                }
            }
        }
    return null;
    }

没有网址或uri,我本来会用的。我做错了什么?

1 个答案:

答案 0 :(得分:1)

final String link = intent.getStringExtra(Intent.EXTRA_TEXT);

做了这个伎俩。