意图:Android上的自定义操作
我最近开始学习Android开发。自从我成为.NET多年以来,开始编写和创建我的第一个应用程序并不困难 我正在构建一个测试应用程序(用于研究prupose),我有一个LoginActivity,它有一个静态字符串字段,如下所示:意图:Android上的自定义操作,android,android-intent,action,Android,Android Intent,Action,我最近开始学习Android开发。自从我成为.NET多年以来,开始编写和创建我的第一个应用程序并不困难 我正在构建一个测试应用程序(用于研究prupose),我有一个LoginActivity,它有一个静态字符串字段,如下所示: public static final String LOGIN_ACTION = "com.sid.ugho.action.LOGIN_ACTION"; final Intent loginIntent = new Intent(LoginActivity.LOG
public static final String LOGIN_ACTION = "com.sid.ugho.action.LOGIN_ACTION";
final Intent loginIntent = new Intent(LoginActivity.LOGIN_ACTION);
startActivityForResult(loginIntent, LOGIN_REQUEST_ID);
在舱单上我有:
<activity
android:name=".LoginActivity"
android:label="@string/title_activity_login" >
<intent-filter>
<action android:name="com.sid.ugho.action.LOGIN_ACTION"/>
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
我想这没什么大不了的,因为这一切都很有效,所以这项活动非常有效。我的问题是:当我的LoginActivity以该特定操作启动时,我如何处理它?如何从指定操作启动中识别“正常”启动(无指定操作)? 谢谢大家!
(对不起,我的英语不好)在
onCreate
方法中,您可以采取:
Intent intent = getIntent();
String action = intent.getAction()
在LogInActivity中,您可以检索调用者意图的操作
String filteredAction = getIntent().getAction();
现在,如果有人用
LoginActivity.LOGIN\u ACTION
启动了您的LoginActivity
,那么您将在filteredAction
中获得com.sid.ugho.ACTION.LOGIN\u ACTION
。但是如果LoginActivity不是通过action启动的,而是通过任何其他方式启动的,那么您将在filteredAction
中获得null
谢谢你的回答!