解决video标签在安卓webview下无法自动播放问题

在安卓webview下

html5 的 video 设置autoplay 属性

或在document ready中使用play方法

都不能使它自动播放

只能用webview的onPageFinished方法来解决此问题,代码如下:


代码如下:

mPlayer.setWebViewClient(new WebViewClient() {
// autoplay when finished loading via javascript injection
public void onPageFinished(WebView view, String url) { mPlayer.loadUrl("javascript:(function() { var videos = document.getElementsByTagName('video'); for(var i=0;i<videos.length;i++){videos[i].play();}})()"); }
});

将上面的代码放到//here的地方即能解决问题。


代码如下:

public class PlayerActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
//here
}
}

(0)

相关推荐

  • 安卓应用开发通过java调用c++ jni的图文使用方法

    首先建议一个工程 HelloJni如下图: 按照默认的配置下一步,直到完成 . 如下图操作,点击windows菜单->Prefrence菜单: 弹出如下图:选择Andriod ->NDK: 配置完成以后,点击工程属性菜单: 做这一步的目的是,增加对c++代码的支持,他会自动生成一些东西,你会看到多一个jni的文件夹. 这个名字可以默认,就用工程的名字,实际上就是产生的c++代码生成.so文件的名称(windows上的dll文件). 完成以后.可以看代码,生成一个HelloJni的.cpp文件.

  • android轻松管理安卓应用中的log日志 发布应用时log日志全部去掉的方法

    管理log一般有两种方法,博主推荐大家使用下面的第一种方法: 第一种方法: 第一步:定义一个logTools工具类,相信你能够看懂的,谁的log,可以用谁的名字做方法名,如logli,这就是工程师li打印的日志 复制代码 代码如下: import android.util.Log; public class LogTools { public static boolean isShow = true;//上线模式 //public static boolean isShow = false;//

  • 六款值得推荐的android(安卓)开源框架简介

    1.volley 项目地址 https://github.com/smanikandan14/Volley-demo (1)  JSON,图像等的异步下载: (2)  网络请求的排序(scheduling) (3)  网络请求的优先级处理 (4)  缓存 (5)  多级别取消请求 (6)  和Activity和生命周期的联动(Activity结束时同时取消所有网络请求) 2.android-async-http 项目地址:https://github.com/loopj/android-asyn

  • 谷歌被屏蔽后如何搭建安卓环境

    安装容易出现的问题以及解决方法:1.更新sdk时可能无法连接服务器,可在C:\WINDOWS\system32\drivers\etc下的hosts文件最后添加:#Google主页203.208.46.146 www.google.com#这行是为了方便打开Android开发官网 现在好像不翻墙也可以打开74.125.113.121 developer.android.com#更新的内容从以下地址下载203.208.46.146 dl.google.com203.208.46.146 dl-ss

  • 安卓APP测试之使用Burp Suite实现HTTPS抓包方法

    APP的测试重点小部分在APP本身,大部分还是在网络通信上(单机版除外).所以在安卓APP测试过程中,网络抓包非常重要,一般来说,app开发会采用HTTP协议.Websocket.socket协议,一般来说,HTTP协议最多,Websocket是后起之秀,socket最少,而针对HTTP和websocket,Burp Suite工具是最适合不过的工具了.但是在遇到了app使用SSL或TLS加密传输(https)的时候,由于证书不被信任,直接导致网络通信终端,抓包失败.本文介绍如何使用Burp s

  • 实时获取股票数据的android app应用程序源码分享

    最近学习Android应用开发,不知道写一个什么样的程序来练练手,正好最近股票很火,就一个App来实时获取股票数据,取名为Mystock.使用开发工具Android Studio,需要从Android官网下载,下载地址:http://developer.android.com/sdk/index.html.不幸的是Android是Google公司的,任何和Google公司相关的在国内都无法直接访问,只能通过VPN访问. 下图为Android Studio打开一个工程的截图: 下面按步介绍Myst

  • 安卓监听屏幕的横竖翻转实现方法

    1.AndroidManifest.xml中将activity 复制代码 代码如下: <activity android:name="com.suma.smartview.activity.LTVDetailActivity" android:configChanges="keyboardHidden|orientation|screenSize"/> <activity> 2.代码里 复制代码 代码如下: public void onCon

  • 安卓(Android)中如何实现滑动导航

    为了打造流畅的用户导航体验,我们不得不依赖智能手机最常见的一个功能:触摸. 触摸改变应用程序的视图是现在最流行一种导航设计.在本文中,我们将经过必要的几步来实现应用内的横向滑动导航. 本文毫无迟疑地使用了代码优先的方法 .让我们看一下滑动导航需要完成的主要代码片段. public class MainActivity extends Activity { SectionsPagerAdapter mSectionsPagerAdapter; ViewPager mViewPager; @Over

  • 通过Html网页调用本地安卓(android)app程序代码

    一.通过html页面打开Android本地的app 1.首先在编写一个简单的html页面 复制代码 代码如下: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <a h

  • 解决video标签在安卓webview下无法自动播放问题

    在安卓webview下 html5 的 video 设置autoplay 属性 或在document ready中使用play方法 都不能使它自动播放 只能用webview的onPageFinished方法来解决此问题,代码如下: 复制代码 代码如下: mPlayer.setWebViewClient(new WebViewClient() { // autoplay when finished loading via javascript injection public void onPag

  • Vue中video标签如何实现不静音自动播放

    由于浏览器厂商为了提高用户体验禁止video标签可以有声的自动播放,也就是说如果想让video标签能够自动播放必须给video标签添加muted属性. 但是在开发的过程中我们需要用视频自动有声播放,比如一些学习网站,需要老师或同学进入页面就可以播放学习视频,那么如何去实现呢? 我是在Vue框架下实现的,其他框架仅供参考. 首先我们要让video标签能够自动播放,也就是让video标签静音条件下自动播放. <video ref="videoPlayer" id="vide

  • Vue中Video标签播放解析后短视频去水印无响应解决

    目录 问题: 情景复现: 链接在Video标签打不开 链接浏览器正常打开 出现的原理 解决方式 前端解决 全局添加标签 Vue单页面添加标签 完美解决: 问题: 发送Ajax请求,请求后端接口解析抖音无水印视频并且展示在页面中,后端已经可以把解析后的访问地址返回,通过浏览器访问该地址也是没有问题的,接着我通过Vue的绑点video的src,预期状态应该是可以被播放的,实际上点击也没反应,查看页面代码也发现video的src已经设置了正确的视频url 情景复现: 前端发送请求到后端接口 我们前端打

  • transform实现HTML5 video标签视频比例拉伸实例详解

    曾几何时,项目中有碰到视频比例拉伸的需求,但是发现这个看似再普通不过的一个需求,找遍全网至今都没有找到解决方法.因为强制给video标签设置width和height的话只会将video的显示区域拉伸,但是里面的视频还是保持原始比例,怎么调都没用: 因为当我横向拉伸时: 当我纵向拉伸时: 2016-09-21 11:15:40 更新: 感谢 @RileyRen 提醒,原来还有object-fit这一属性,把它设置为fill就满足需求了,泪奔~,这篇文章就当看个笑话吧,哎,不过可以看看我家喵星人的处

  • vue中使用h5 video标签实现弹窗播放本地视频的方法

    目录 1.弹窗的打开关闭 2. 本地视频资源路径的引入 3. 视频播放完毕自动关闭弹窗 4. 视频在弹窗中自适应大小 参考h5 < video >标签的用法 在开发过程中主要涉及到以下几个需要关注的点 1.弹窗的打开关闭 父组件中使用.sync绑定visible属性,可直接在子组件中关闭弹窗更新父组件传入的visible值: // 父组件中引用子组件 <video-modal :visible.sync="showVideoModal"> // 子组件中 <

  • 禁止iPhone Safari video标签视频自动全屏的办法

    最近做一个移动端微信页面项目,在微信页面中有视频播放,但是需要禁止IOS的自动全屏播放(前提必须使用video标签). 如: 复制代码 代码如下: <video id="post" autoplay loop preload="auto"> <source src="foo.mp4" type="video/mp4"> </video> 在iPhone safari 点击视频会弹出播放器进行

  • ThinkPHP自定义函数解决模板标签加减运算的方法

    本文实例讲述了ThinkPHP自定义函数解决模板标签加减运算的方法.分享给大家供大家参考.具体如下: 实际项目中,我们经常需要标签变量加减运算的操作.但是,在ThinkPHP中,并不支持模板变量直接运算的操作. 幸运的是,它提供了自定义函数的方法,我们可以利用自定义函数解决: ThinkPHP模板自定义函数语法如下: 格式:{:function(-)} (参考官方帮助文档:http://thinkphp.cn/Manual/196) 利用这个,我们来试做加法和减法. 一.在ThinkPHP中定义

  • 解决ios微信下vue项目组件切换并自动播放音频问题

    最近在做一个英语答题项目 , 项目需求是通过答题取的成绩 , 答题的题型是分为 , 听音选图 , 看图选词 , 和填空题 . 项目总共分为了3个页面 , 开始页 ,答题页 和结束页面 ,答题页关于每种题型 , 我做了相应的组件 , 每次切换题目的时候 ,显示对应的的组件 , 要求听音选图的时候会自动播放音频 . 惯例 , ios下的safari和微信内置浏览器都不支持audio的自动播放 , 通常的解决方案都是通过 document.addEventListener('WeixinJSBridg

  • 关于vue v-for循环解决img标签的src动态绑定问题

    在解决这个问题上,遇到了很多错误的方案,一直没有跑通,有些是图片标记出现了,但是图片内容没有出现,这就很让人头疼了,下面,我讲解我操作成功的案例吧. 1.目录结构如下 图片放置在与src同级的static文件夹下,在这里,我放置在slider中 2.数据配置如下: 注意引入的路径,直接从static文件中对应的地方引入. data () { return { product:[ { "src":'../../static/slider/logo1.jpg', "decerat

  • 解决idea打包成功但是resource下的文件没有成功的问题

    如下所示: 1 需要在project structure中的Artifacts下的项目classes文件夹下添加Directory Content,地址指向resource文件夹. 2 因为 resource(s)目录也是classpath啊,打包之后和src目录一样,里面的文件都会放在classes目录下面. 补充知识:IDEA打jar包没有将resource打包解决方法 在pom文件中添加配置 <build> <resources> <resource> <d

随机推荐