android 开发:我的意图/图标如何像 Android 中的其他社交媒体一样添加到用户列表中

android development: how does my intent / icon get added to user's list like other social media in Android

我想允许用户突出显示文本并将其 post 到我的网站。 有没有一种方法可以创建 Android 意图 运行 作为服务,该服务将显示在 Android 系统中出现的社交媒体/共享列表中?

你知道吗,当用户选择一张图片然后出现三点共享图标并给出一个列表?如何将我的应用程序的意图和图标添加到列表中,就像显示的 Twitter、FB 等一样?

要在您的应用程序中从外部应用程序接收数据 Share 功能,您需要在您的应用程序中创建一个 activity 来接受传入数据。在 AndroidManifest.xml 中为将接受数据的 Activity 添加以下详细信息:

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

所以,现在如果任何应用程序共享单个图像,您的应用程序将在列表中可见,如果用户选择您的应用程序,ui.MyActivity activity 将启动。您可以根据需要更改或添加多个 mimeType

此外,您可以add/change action as MULTIPLE_SEND 接收多个共享文件。

完成后,在 activity 的 onCreate() 方法中,您可以通过以下方式获取数据:

void onCreate (Bundle savedInstanceState) {
    ...

    // Get intent, action and MIME type
    Intent intent = getIntent();
    String action = intent.getAction();
    String type = intent.getType();

    //Play with the data, as per your need
    ...
}

您可以在 Official Documentation

中获得有关此的更多详细信息