当我寻找使媒体播放器能够自动开始播放视频的首选项时on the official document,
我找到了ios(MediaPlaybackRequiresUserAction
)的确切选项。
但是,对此没有任何与Android等效的选项。
不能在Android上自动播放媒体吗?
答案 0 :(得分:1)
您可以在android cordova中执行此操作。还有一种选择。
City Store Avg
-----------------------
Houston Eagle 2.1
Houston Sears 2.5
Houston BK X.X
Miami Eagle X.X
Miami Sears X.X
Miami BK X.X
etc...
更新:
从public class YourActivity extends CordovaActivity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(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);
}
loadUrl(launchUrl);
WebSettings ws = super.appView.getSettings();
ws.setMediaPlaybackRequiresUserGesture(false); // its true by default
}
}
起似乎getSettings()
不再存在了,在这种情况下,下面的方法应该可以工作
appView
答案 1 :(得分:0)
我要做的就是使用Android的setMediaPlaybackRequiresUserGesture(true/false)
方法来控制媒体播放行为。
该操作位于onCreate()
文件的MainActivity.java
中。
(谢谢阿米特·萨哈!)
它在platforms/android/app/src/main/java/whatever/your/namespace/MainActivity.java
import android.os.Bundle;
import org.apache.cordova.*;
import android.webkit.WebSettings; // ----- ADDED
import android.webkit.WebView; // ----- ADDED
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);
// ----- ADDED
WebView wv = (WebView) appView.getEngine().getView();
WebSettings ws = wv.getSettings();
ws.setMediaPlaybackRequiresUserGesture(false);
}
}