Attualmente sto lavorando a un'applicazione Android basata su un sito web. L'applicazione iOS esiste già e devo rispettare alcuni codici per uniformità.I video iframe non andranno in modalità schermo intero nella visualizzazione web Android
Tutto è quasi finito, ma ho appena scoperto un problema interessante: quando si utilizza la visualizzazione Web (non ho alcun controllo sulla pagina visualizzata) per una pagina con un video iframe (Youtube, Dailymotion), ha vinto ' t andare a schermo intero, anche se sto premendo il pulsante del lettore.
Ho già provato praticamente tutto ciò che si trova qui, ma si riferisce solo alle app in cui so quali pagine è necessario visualizzare.
Ecco il codice per la parte webActivity dell'app:
public class WebActivity extends Activity {
String targetURL = "";
String title = "";
WebView wv;
@Override
public void onResume() { super.onResume(); CookieSyncManager.getInstance().startSync(); }
@Override
public void onPause() { super.onPause(); CookieSyncManager.getInstance().stopSync(); }
/** Called when the activity is first created. */
@SuppressLint("SetJavaScriptEnabled")
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().requestFeature(Window.FEATURE_PROGRESS);
//getWindow().requestFeature(Window.FEATURE_NO_TITLE);
CookieSyncManager.createInstance(getApplicationContext());
CookieSyncManager.getInstance().startSync();
CookieManager.getInstance().setAcceptCookie(true);
/**
* TODO: WebView Cookie management.
* Right now, a cookie is hardcoded here into the WebView instead of getting it from the API called by HttpClient when retrieving the JSON.
* Need to make things cleaner.
*/
CookieManager.getInstance().setCookie("http://www.blabla.fr/mobile/","gbapi=1; Domain=.www.blabla.fr");
/**
* Get parameters
*/
Bundle b = getIntent().getExtras();
if(b != null)
{
targetURL = b.getString("url");
title = b.getString("title");
}
setTitle(title);
setContentView(R.layout.activity_webview);
wv = (WebView) findViewById(R.id.webview);
WebSettings wvSettings = wv.getSettings();
// WebView options
wvSettings.setDefaultTextEncodingName("utf-8");
wvSettings.setJavaScriptEnabled(true);
wvSettings.setPluginState(PluginState.ON);
wvSettings.setJavaScriptCanOpenWindowsAutomatically(true);
wvSettings.setBuiltInZoomControls(true);
final Activity activity = this;
wv.setWebChromeClient(new WebChromeClient() {
public void onProgressChanged(WebView view, int progress) {
activity.setProgress(progress * 100);
}
});
wv.setWebViewClient(new WebViewClient() {
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
Toast.makeText(activity, "Oh snap! " + description, Toast.LENGTH_SHORT).show();
}
});
wv.loadUrl(targetURL);
}
}
Grazie per qualsiasi aiuto.
non ho guardato a questo codice in pochi mesi. Un sacco di interventi chirurgici a metà e variabili rimanenti. >
MattC
Grazie! Ho dovuto modificare un po 'il codice, ma potrei usarlo. – Pascal