启动自定义chromecast接收器有时会超时

时间:2014-02-21 16:18:42

标签: android chromecast

我有一个自定义Chromecast接收器,当用户从“投射”按钮中选择他们的Chromecast设备时,我会从Android应用启动它。我发现我经常在初始连接上超时,但第二次它工作正常。问题很可能是我的网络服务器响应速度不够快,还是有其他可能导致超时的因素?

我在onApplicationConnectionFailed()中获得了CastStatusCodes.TIMEOUT。

我要启动的代码 (已编辑包含launchApplication)

Builder builder = new GoogleApiClient.Builder(mContext);
builder.addApi(Cast.API, apiOptionsBuilder.build());
builder.addConnectionCallbacks(this);
builder.addOnConnectionFailedListener(this);
mApiClient = builder.build();

if (mApiClient == null) return;
mApiClient.connect();

...

Cast.CastApi.launchApplication(mApiClient, mApplicationId)
 .setResultCallback(new ResultCallback<Cast.ApplicationConnectionResult>() {

    @Override
    public void onResult(ApplicationConnectionResult result) {
        if (result.getStatus().isSuccess()) {
            onApplicationConnected(
                result.getApplicationMetadata(),
                result.getApplicationStatus(),
                result.getSessionId(),
                result.getWasLaunched());
        } else {
                onApplicationConnectionFailed(result.getStatus().getStatusCode());
        }
    }
});   

1 个答案:

答案 0 :(得分:0)

您发布的代码是在加载应用程序之前,因此如果您在onApplicationConnectionFailed中获得超时,那么代码中的代码将会更低,而不是您在此处发布的部分。如果您的应用程序加载失败,则需要检查您的网络和Web服务器等。