Android 如何知道某项活动是根据给定的意图启动的?
我正在使用给定的代码登录Twitter。回调url为Android 如何知道某项活动是根据给定的意图启动的?,android,android-intent,Android,Android Intent,我正在使用给定的代码登录Twitter。回调url为oauth://t4jsample和意图过滤器如下所示 它工作得很好,但是当从这个意图启动MainActivity时,我想重新加载包含我的Twitter登录按钮的片段,以显示一条消息“你已登录为…” 我怎么知道Twitter网页发送的Intent启动了MainActivity?我可以获得意图的操作,但如何确保它不是由其他东西发送的 意图过滤器 ... u可以使用getIntent().getData(),它将给出与意图关联的数据的Uri。如果
oauth://t4jsample
和意图过滤器
如下所示
它工作得很好,但是当从这个意图启动MainActivity
时,我想重新加载包含我的Twitter登录按钮的片段
,以显示一条消息“你已登录为…”
我怎么知道Twitter网页发送的Intent
启动了MainActivity
?我可以获得意图
的操作,但如何确保它不是由其他东西发送的
意图过滤器
...
u可以使用getIntent().getData(),它将给出与意图关联的数据的Uri。如果它与oauth://t4jsample,然后你可以确定它来自twitter,你可以做相应的改变
<activity android:name=".MainActivity" ... >
...
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="t4jsample"
android:scheme="oauth" />
</intent-filter>
</activity>