Uber RideRequestButton 卡在 "Requesting"
Uber RideRequestButton gets stuck at "Requesting"
我正在实施 RideRequestButton 以打开 UBER activity 以请求 UBER SDK 提供的出租车。
选择源和目标后,当我单击 "request uberx" 按钮时,它会显示 "requesting",但之后什么也没有发生。
sample code 工作正常,但相同的代码在我的应用程序中不起作用。
我已经设置了 CLIENT_ID、REDIRECT_URI 和 SERVER_TOKEN,并且还在 Mainfest 中授予了位置权限。
我也有 UBER 的 FULL ACCESS 权限。
这是我的代码片段
configuration = new SessionConfiguration.Builder()
.setRedirectUri(REDIRECT_URI)
.setClientId(CLIENT_ID)
.setServerToken(SERVER_TOKEN)
.build();
validateConfiguration(configuration);
ServerTokenSession session = new ServerTokenSession(configuration);
RideParameters rideParametersForProduct = new RideParameters.Builder()
.setProductId(UBERX_PRODUCT_ID)
.setPickupLocation(PICKUP_LAT, PICKUP_LONG, PICKUP_NICK, PICKUP_ADDR)
.setDropoffLocation(DROPOFF_LAT, DROPOFF_LONG, DROPOFF_NICK, DROPOFF_ADDR)
.build();
RideRequestButton uberButtonWhite = new RideRequestButton(context);
RideRequestActivityBehavior rideRequestActivityBehavior = new RideRequestActivityBehavior((Activity)context,
WIDGET_REQUEST_CODE, configuration);
uberButtonWhite.setRequestBehavior(rideRequestActivityBehavior);
uberButtonWhite.setRideParameters(rideParametersForProduct);
uberButtonWhite.setSession(session);
uberButtonWhite.loadRideInformation();
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setView(uberButtonWhite);
builder.show();
我还需要做些什么才能让它发挥作用吗?
我正在回答我自己的问题。 @tsmith 的提示对我有用。
环境必须明确设置为生产环境。将其保留为沙盒或空白会使应用程序冻结在 "requesting"。
我正在实施 RideRequestButton 以打开 UBER activity 以请求 UBER SDK 提供的出租车。 选择源和目标后,当我单击 "request uberx" 按钮时,它会显示 "requesting",但之后什么也没有发生。
sample code 工作正常,但相同的代码在我的应用程序中不起作用。 我已经设置了 CLIENT_ID、REDIRECT_URI 和 SERVER_TOKEN,并且还在 Mainfest 中授予了位置权限。 我也有 UBER 的 FULL ACCESS 权限。
这是我的代码片段
configuration = new SessionConfiguration.Builder()
.setRedirectUri(REDIRECT_URI)
.setClientId(CLIENT_ID)
.setServerToken(SERVER_TOKEN)
.build();
validateConfiguration(configuration);
ServerTokenSession session = new ServerTokenSession(configuration);
RideParameters rideParametersForProduct = new RideParameters.Builder()
.setProductId(UBERX_PRODUCT_ID)
.setPickupLocation(PICKUP_LAT, PICKUP_LONG, PICKUP_NICK, PICKUP_ADDR)
.setDropoffLocation(DROPOFF_LAT, DROPOFF_LONG, DROPOFF_NICK, DROPOFF_ADDR)
.build();
RideRequestButton uberButtonWhite = new RideRequestButton(context);
RideRequestActivityBehavior rideRequestActivityBehavior = new RideRequestActivityBehavior((Activity)context,
WIDGET_REQUEST_CODE, configuration);
uberButtonWhite.setRequestBehavior(rideRequestActivityBehavior);
uberButtonWhite.setRideParameters(rideParametersForProduct);
uberButtonWhite.setSession(session);
uberButtonWhite.loadRideInformation();
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setView(uberButtonWhite);
builder.show();
我还需要做些什么才能让它发挥作用吗?
我正在回答我自己的问题。 @tsmith 的提示对我有用。 环境必须明确设置为生产环境。将其保留为沙盒或空白会使应用程序冻结在 "requesting"。