我使用以下代码从我的Phonegap / Cordova插件启动YouTubeStandalonePlayer Intent:
package com.remcob00.plugins.youtube;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import android.app.Activity;
import android.content.Intent;
import org.apache.cordova.api.Plugin;
import org.apache.cordova.api.PluginResult;
import com.google.android.youtube.player.YouTubeInitializationResult;
import com.google.android.youtube.player.YouTubeStandalonePlayer;
public class YouTube extends Plugin {
@Override
public PluginResult execute(String action, JSONArray args, String callbackId) {
try {
JSONObject jo = args.getJSONObject(0);
doSendIntent(jo.getString("videoid"));
return new PluginResult(PluginResult.Status.OK);
} catch (JSONException e) {
return new PluginResult(PluginResult.Status.JSON_EXCEPTION);
}
}
private void doSendIntent(String videoid) {
// API key instructions https://developers.google.com/youtube/android/player/register
Intent youtubeIntent = YouTubeStandalonePlayer.createVideoIntent((Activity) this.cordova, "YOUR_API_KEY", videoid);
this.cordova.startActivityForResult(this, youtubeIntent, 0);
}
}
但问题是,如果我打开YouTube意图并按下后退按钮I,它不会返回到我打开意图但是index.html文件的页面。我该如何解决这个问题?
答案 0 :(得分:0)
如果找不到更好的解决方案,可以在每次更改页面后使用window.localStorage存储当前位置,然后在打开index.html时检测Resume事件并检查window.localStorage的值是否为空了。
如果不是 - 只需重定向到该位置。
答案 1 :(得分:0)
这似乎是Android模拟器中的一个问题。我已经在真实的设备上测试了它并且工作正常。