嗨,我正在开发一个应用程序,以在应用程序内的Google Map片段上打开共享位置。当用户触摸共享的位置链接时,我的应用程序应显示为“打开时带有列表”。这是我的清单
这就是我尝试添加意图过滤器
<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="http" android:host="maps.google.com" android:pathPattern="/maps"/>
<data android:scheme="https" android:host="maps.google.com" android:pathPattern="/maps"/>
<data android:scheme="geo"/>
</intent-filter>
我希望在点击位置上,我的应用可以通过对话框打开显示。
答案 0 :(得分:0)
我已经尝试过该清单条目,并且对我有用。
<activity
<intent-filter>
<!-- Filter to run activity without geo -->
<action android:name="com.example.MYACTION" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<intent-filter>
<!-- Filter for geo scheme geo -->
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="geo" />
</intent-filter>
</activity>
我的活动的onCreate()如下
protected void onCreate(Bundle savedInstanceState) {
Intent intent = getIntent();
String action = intent.getAction();
Uri data = intent.getData();
if(Intent.ACTION_VIEW.equals(action) ) {
if(data != null && "geo".equals(data.getScheme())) {
// Displaying map when there is geo Data
}
}
else {
// Other code when there is no geo DATA from intent
}
}
您可以尝试让我知道。