Atitit.android webview h5运行环境总结

1. WebView 的使用1

2. Js调用java1

3. Js调用java 跟个swt的比较2

3.1. Swt是BrowserFunction 机制,绑定了个自定义方法2

3.1.1. nativeswing的实现 预绑定一个sendNSCommand方法2

4. code2

5. Webview code4

1. WebView 的使用

2. Js调用java

browExt.play();

webView.addJavascriptInterface(new browExtObj(this), "browExt");

webView.loadUrl(url);

实现模式是绑定一个可以自定义浏览器对象

作者::  ★(attilax)>>> 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://www.cnblogs.com/attilax/

3. Js调用java 跟个swt的比较

3.1. Swt是BrowserFunction 机制,绑定了个自定义方法

new CallJavaPaa1(browser, "sendNSCommand");

BrowserFunction 是个非常有意思的类,它可以为 Browser 永久绑定一个 JavaScript 方法,它的构造函数是 BrowserFunction(browser:Browser, name:String),其中 browser 代表 Browser 对象,而 name 则代表绑定该浏览器的 JavaScript 方法名,定义了该 BrowserFunction 对象以后,任何在 Browser 显示的网页,都可以访问名为 name 的 JavaScript 方法。

3.1.1. nativeswing的实现 预绑定一个sendNSCommand方法

sendNSCommand('play',video);

4. code

package com.example.atiplat_vodcp;

import java.io.File;

import java.io.PrintWriter;

import java.io.StringWriter;

import java.net.URLEncoder;

import android.content.Intent;

import android.net.Uri;

import android.os.Environment;

import android.util.Log;

import android.webkit.JavascriptInterface;

import android.widget.Toast;

public class browExtObj {

public static String getTrace(Throwable t) {

StringWriter stringWriter = new StringWriter();

PrintWriter writer = new PrintWriter(stringWriter);

t.printStackTrace(writer);

StringBuffer buffer = stringWriter.getBuffer();

return buffer.toString();

}

MainActivity mainActivity;

public browExtObj(MainActivity mainActivity2) {

mainActivity = mainActivity2;

}

@JavascriptInterface  //sdk17版本以上加上注解    solu  click btn ma fein ..

public void play() {

try {

String mv = "smb://192.168.2.106/e/非蓝光/大头儿子小头爸爸/新大头儿子和小头爸爸之秘密计划.mp4";

Log.v("::::mv in html ", mv);

Toast.makeText(mainActivity,

"play in html,mv:" + new File(mv).exists(),

Toast.LENGTH_LONG).show();

String mv2 = Environment.getExternalStorageDirectory().getPath()

+ "/Test_Movie.m4v";

mv="http://127.0.0.1:7788/?file="+URLEncoder.encode(mv,"utf-8");

//Log.v("URI html:::::::::", uri.toString());

Uri uri = Uri.parse(mv);

// 调用系统自带的播放器

Intent intent = new Intent(Intent.ACTION_VIEW);

Log.v("URI html:::::::::", uri.toString());

// intent.setData(uri);

intent.setDataAndType(uri, "video/*");

mainActivity.startActivity(intent);

System.out.println("--form_load finish");

} catch (Throwable e) {

Log.i("::::::::::::exp", getTrace(e));

}

}

5. Webview code

WebView webView;

public static String getTrace(Throwable t) {

StringWriter stringWriter= new StringWriter();

PrintWriter writer= new PrintWriter(stringWriter);

t.printStackTrace(writer);

StringBuffer buffer= stringWriter.getBuffer();

return buffer.toString();

}

@SuppressLint("SetJavaScriptEnabled")

public void form_load() {

try {

String simple = PinyinX.getSimple(  "Android 提示");

new AlertDialog.Builder(this).setTitle(simple)

.setMessage("这是一个提示,请确定").show();

webView = (WebView) findViewById(R.id.webView1);

// 设置WebView属性,能够执行Javascript脚本

webView.getSettings().setJavaScriptEnabled(true);

webView.loadUrl("http://139.196.164.150:8080/lime/cmsWechat/list.html");

} catch (Throwable e) {

Log.i("exp",  getTrace(e));

}

}

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

// //加载需要显示的网页

// webview.loadUrl("http://www.51cto.com/");

// //设置Web视图

//

setContentView(R.layout.activity_main);

form_load();

// setContentView(webView);

}

Atitit.android webview h5运行环境总结的更多相关文章

  1. Atitit linux获取项目运行环境版本

    Atitit linux获取项目运行环境版本 1.1. Nginx版本1 1.2. Php版本1 1.3. Mysql版本2 1.4. Redis版本2 1.1. Nginx版本 [root@iZ25 ...

  2. Android Webview H5资源本地化

    Android Webview H5资源本地化 一. 创建读取资源项目独立模块 1. 项目依赖的好处 符合模块化的思想,他们相互独立.一个项目持有另一个项目的引用,修改更加方便. (注:compile ...

  3. Android WebView H5开发拾遗

    上篇介绍了一些WebView的设置,本篇为一些补充项. 首先加载HTML5的页面时,会出现页面空白的现象,原因是需要开启 DOM storage API 功能: webSettings.setDomS ...

  4. Android WebView与H5联调技巧

    版权声明:本文为xing_star原创文章,转载请注明出处! 本文同步自http://javaexception.com/archives/78 背景: 突然想写一篇关于Android WebView ...

  5. Android(java)学习笔记161:Framework运行环境之启动SystemServer进程

          SystemServer进程是zygote孵化出的第一个进程,该进程是从ZygoteInit.java的main函数中调用startSystemServer()开始的.与启动普通进程的差别 ...

  6. Android WebView 不支持 H5 input type="file" 解决方法

    最近因为赶项目进度,因此将本来要用原生控件实现的界面,自己做了H5并嵌入webview中.发现点击H5中 标签 不能打开android资源管理器. 通过网络搜索发现是因为 android webvie ...

  7. Android原生和H5交互;Android和H5混合开发;WebView点击H5界面跳转到Android原生界面。

    当时业务的需求是这样的,H5有一个活动商品列表的界面,IOS和Android共用这一个界面,点击商品可以跳转到Android原生的商品详情界面并传递商品ID:  大概就是点击H5界面跳转到Androi ...

  8. 原生+H5开发之:Android webview配置

    在上一篇文章Android 原生开发.H5.React-Native开发特点,我们可以了解到三种Android开发方式的区别和优缺点.[Android开发:原生+H5]系列的文章,将主要讲解Andro ...

  9. Android(java)学习笔记104:Framework运行环境之启动SystemServer进程

    1. SystemServer进程      SystemServer进程是zygote孵化出的第一个进程,该进程是从ZygoteInit.java的main函数中调用startSystemServe ...

随机推荐

  1. [SPOJ]COT2

    题意:给一棵带点权的树,多次询问两点间路径上的不同权值数 学习了一下莫队上树(雾 先求出栈入栈序$p_{1\cdots 2n}$,记$st_x$为$x$在$p$中第一次出现的位置,$ed_x$为$x$ ...

  2. 【kd-tree】bzoj1176 [Balkan2007]Mokia

    裸题不多说,注意在sqrt(n*log(n))次插入后重构树以保持深度. #include<cstdio> #include<cmath> #include<algori ...

  3. 【莫队算法】【权值分块】bzoj3809 Gty的二逼妹子序列

    如题. #include<cstdio> #include<algorithm> #include<cmath> using namespace std; int ...

  4. Python学习实践 | speech智能语音模块

    最近的生活.学习节奏很是容易被打断,终于,在今天,既实习结束之后,夏令营也结束了. 前几天,一个人在复习地很累的时候,又重新将Python捡了起来,看了挺多的知识点. 真是太有意(wu)思(liao) ...

  5. vim 代码注释插件

    参考: 1.http://www.vim.org/scripts/script.php?script_id=1218 2.http://www.dutor.net/index.php/2010/05/ ...

  6. Devexpress汉化修改 已经汉化过后生成的*.resources.dll文件 z

    Devexpress 是很好的第三方控件.但是需要汉化,在从网上下载的zh-CN文件夹里都是*.resources.dll文件,由于汉化的工作量很大,难免有些地方汉化 错误或者不合适(如下图).花了些 ...

  7. postgres访问认证配置文件pg_hba.conf

    pg_hba.conf(默认位于/var/lib/pgsql/10/data/pg_hba.conf)是设置访问认证的主要文件,格式为每条记录一行,每行指定一条访问认证. 设定一条访问认证包含了5个部 ...

  8. git:FETCH_HEAD

    FETCH_HEAD: 是一个版本链接,记录在本地的一个文件中,指向着目前已经从远程仓库取下来的分支的末端版本. 举例说明:将远程origin仓库的xx分支合并到本地的yy分支.git fetch o ...

  9. 学习Struts2.3

    </pre>1.struts2.3核心jar包(若首次接触,可临时略过不看)大家能够到http://struts.apache.org/download.cgi#struts2014下载s ...

  10. Malware

    电脑病毒的一种, 中文名为“马威尔”, 有多种病毒变种. 1概述 Malware这个单词来自于Malicious和Software两个单词的合成,是恶意软件的专业术语,专指那些泛滥于网络中的恶意代码. ...