我在任意应用的上下文操作栏中与“分享”中的应用选项

时间:2015-04-14 19:35:04

标签: android

我已经构建了一个字典应用程序,它可以说明找到单词的含义。

我注意到任何应用的上下文操作栏中的'share with'选项(如果存在)都会提供一个应用列表,可以使用这些应用分享所选数据。

对于前。在长按文本并在上下文操作栏中选择共享的浏览器中,我可以与“保持”应用共享以创建注释。我想在这里登记我的应用程序,以便用户可以直接找到所选文本的含义。

我知道我必须实现某种类型的监听器,也许android会自动运行我的应用程序,但我无法找到确切的步骤。我在共享选项中看到了除系统应用程序之外的一些应用程序,所以我相信它可以在任何应用程序中完成。

有人可以给我相同的指示。

还有什么方法可以识别一些独特的触发器,例如在任何应用程序中三次单击单词并弹出我的字典片段,其中包含含义。我知道最后一部分大部分都不可能实现但仍然可以吗?

1 个答案:

答案 0 :(得分:1)

将此添加到AndroidManifest.xml

<activity android:name=".ui.MyActivity" >
    <intent-filter>
        <action android:name="android.intent.action.SEND" />
        <category android:name="android.intent.category.DEFAULT" />
        <data android:mimeType="text/plain" />
    </intent-filter>
</activity>

MyActivity.java

void onCreate (Bundle savedInstanceState) {
    ...
    // Get intent, action and MIME type
    Intent intent = getIntent();
    String action = intent.getAction();
    String type = intent.getType();

    if (Intent.ACTION_SEND.equals(action) && type != null) {
        if ("text/plain".equals(type)) {
            String sharedText = intent.getStringExtra(Intent.EXTRA_TEXT);
            if (sharedText != null) {
                // Update UI to reflect text being shared
            }
        } 
    }
}

完整的教程可以在这里找到:
https://developer.android.com/training/sharing/receive.html