0

我无法让 Uber 深度链接在 android 上运行。这是我的代码。

pm.getPackageInfo("com.ubercab", PackageManager.GET_ACTIVITIES);
                    Uri uberUri = new Uri.Builder().appendEncodedPath("uber://?action=setPickup&pickup=my_location")
//                            .appendQueryParameter("client_id",AppDriver.UBER_API_KEY)
//                            .appendQueryParameter("dropoff_latitude", beacon.getBeaconLatitude() + "")
//                            .appendQueryParameter("dropoff_longitude", beacon.getBeaconLongitude() + "")
//                            .appendQueryParameter("dropoff_nickname", beacon.getBeaconTitle())
                            .build();

                    Log.d("URI", uberUri.toString());

                    Intent uberIntent = new Intent(Intent.ACTION_VIEW,uberUri);


                    List<ResolveInfo> activities = pm.queryIntentActivities(uberIntent, 0);
                    boolean isIntentSafe = activities.size() > 0;

                    if(isIntentSafe) {
                        startActivity(uberIntent);
                    } else {
                        Log.d("DetailsFragment", "UBER INTENT WAS NOT SAFE");
                    }

我正在尝试使用 Uber Api Docs 中列出的最低限度的查询。

https://developer.uber.com/v1/deep-linking/

而且我没有为给定的意图找到任何活动。我设置的意图错误吗?任何帮助是极大的赞赏。

4

1 回答 1

0

以下是在 Android 上启动 Intent 的示例:

String url = "uber://?action=setPickup&pickup=94043";
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(url));
startActivity(i);
于 2015-08-01T00:09:47.437 回答