Android Chrome 只分享截图
Android Chrome shares only screenshot
我想在 Android 上通过 Chrome 将当前 url 分享到我的应用程序。我已经注册了共享意图和共享过滤器。到目前为止,我得到了共享的屏幕截图,但没有 url。我做错了什么?
清单文件
<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 的方法中使用的代码片段 class
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;
}
没有url或uri,我会用的。我做错了什么?
final String link = intent.getStringExtra(Intent.EXTRA_TEXT);
成功了。
我想在 Android 上通过 Chrome 将当前 url 分享到我的应用程序。我已经注册了共享意图和共享过滤器。到目前为止,我得到了共享的屏幕截图,但没有 url。我做错了什么?
清单文件
<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 的方法中使用的代码片段 class
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;
}
没有url或uri,我会用的。我做错了什么?
final String link = intent.getStringExtra(Intent.EXTRA_TEXT);
成功了。