我在Manifest中拦截了我的应用中的网址:
<activity
android:name="com.myapp.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:host="myapp.com" android:scheme="http" />
</intent-filter>
</activity>
所以,在MainActivity.java
的{{1}}方法中,我这样做:
onCreate
我在使用这种方法时遇到了一些麻烦,我仍然想解决这个问题。但我想确保这是否是一个很好的模型。
我的基本要求是:拦截网址时,我希望if (data == null) {
//do regular stuff when app is opened by user in normal fashion.
}
else {
//do some activity when app is opened by the url intercepted
Intent create = new Intent(getApplicationContext(), SomeActivity);
startActivityForResult(create, 1);
}
接管。