Сначала настройте его в AndroidManifest. xml, добавьте фильтр намерений к соответствующему действию следующим образом:
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/title_activity_main" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<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:scheme="paraches" />
</intent-filter>
</activity>
</application>
Затем добавьте соответствующий код синтаксического анализа к соответствующему действию следующим образом. :
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Intent intent = getIntent();
String action = intent.getAction();
if (Intent.ACTION_VIEW.equals(action)) {
Uri uri = intent.getData();
if (uri != null) {
String host = uri.getHost();
String dataString = intent.getDataString();
String id = uri.getQueryParameter("id");
String path = uri.getPath();
String path1 = uri.getEncodedPath();
String queryString = uri.getQuery();
Log.d("Alex", "host:"+host);
Log.d("Alex", "dataString:" + dataString);
Log.d("Alex", "id:" + id);
Log.d("Alex", "path:" + path);
Log.d("Alex", "path1:" + path1);
Log.d("Alex", "queryString:" + queryString);
}
}
}
Посмотрите на Журнал следующим образом:
host:schemedemo
dataString:paraches://schemedemo/get/info?id=10000
id:10000
path:/get/info
path1:/get/info
queryString:id=10000