如何查找应用程序是否被“Share-Via”调用?

时间:2013-10-07 14:23:21

标签: java android eclipse android-intent android-activity

我已将我的Android应用添加到“Share-Via”窗口。以下代码已添加到我的代码的onCreate()方法中。

        if(getIntent().getAction().equals(Intent.ACTION_SEND))
        {
            String text = getIntent().getStringExtra(Intent.EXTRA_TEXT);
            textField.setText(text);
        }

现在的问题是,如果通过共享来调用此应用程序活动,则可以正常运行。但如果直接调用它(用户打开应用程序 - >转到该活动),则会与NullPointerException崩溃。我正好在这里NullPointerException

if(getIntent().getAction().equals(Intent.ACTION_SEND))

以下是清单文件中此Share-Via的配置方式。

<activity
            android:name="com.xx.xx.xx"
            android:screenOrientation="portrait"
            android:label="@string/app_name" >

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

        </activity>

这是什么问题?

1 个答案:

答案 0 :(得分:4)

getIntent()getAction()正在返回null 你需要检查一下。