[JAVA] Ermöglicht die automatische Wiedergabe von Youtube auch mit der Android-App von Cordova

Vorwort

Medien-Autoplay wie Youtube und andere Funktionen (*) in der Entwicklung mobiler Anwendungen Es ist deaktiviert, um unnötige Kommunikation nicht nur bei der Entwicklung nativer Apps zu verhindern Gleiches gilt für die Entwicklung von Hybrid-Apps mit JavaScript + Cordova.

Cordova-Optionen zum Aktivieren ist in iOS vorhanden, jedoch nicht in Android. "Kann YouTube nicht automatisch nur auf Android in der Entwicklung mit Cordova automatisch abspielen?: Cry:" Dies ist nicht der Fall, sondern in der nativen App-Einstellungs-API von Android Durch Drücken der Methode "setMediaPlaybackRequiresUserGesture (true / false)" Sie können es aktivieren.

Code korrigieren

Zu manipulierende Datei (com / example / hoge ist der Name und der Namespace der App. Bitte lesen Sie diese entsprechend.)

platforms/android/app/src/main/java/com/example/hoge/MainActivity.java

import android.os.Bundle;
import org.apache.cordova.*;
import android.webkit.WebSettings; //★ Ergänzung
import android.webkit.WebView; //★ Ergänzung

public class MainActivity extends CordovaActivity
{
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);

        // enable Cordova apps to be started in the background
        Bundle extras = getIntent().getExtras();
        if (extras != null && extras.getBoolean("cdvStartInBackground", false)) {
            moveTaskToBack(true);
        }

        // Set by <content src="index.html" /> in config.xml
        loadUrl(launchUrl);
        
        //★ Ergänzung
        WebView wv = (WebView) appView.getEngine().getView();
        WebSettings ws = wv.getSettings();
        ws.setMediaPlaybackRequiresUserGesture(false);
    }
}

Serpentin

Wenn Sie Plattformen und darunter nicht unter Git-Kontrolle halten möchten, speichern Sie die Datei MainActivity.java an einem anderen Speicherort Ich denke, es ist eine gute Idee, diese Version zu verwalten und die Hook-Funktion von Cordova zu verwenden, um sie vor dem Erstellen zu verschieben.

config.xml

<platform name="android">
  <hook type="before_build" src="scripts/updateMainActivity.sh" />
  ...

scripts/updateMainActivity.sh

#!/bin/bash

#Zum Beispiel native_Wenn Sie MainActivity in Codes haben
cp native_codes/MainActivity.java platforms/android/app/src/main/java/com/example/hoge/MainActivity.java

Recommended Posts

Ermöglicht die automatische Wiedergabe von Youtube auch mit der Android-App von Cordova
ROS App Entwicklung auf Android
Hinweise zum Aufrufen von Installer in der Android App
Ich habe eine Taschenrechner-App für Android erstellt
Android Wetter App
[2018 Preservation Version] Reverse Engineering Android App (.apk) auf Mac
[Android] Hinweise zu XML
Android App Spectrum Analyzer
Informationen zu Android-App-Komponenten