AndroidDev 板


LINE

app的webview与网页上的javascipt互动 互动方式我是知道 问题是 javascript call 外部程式物件的method 用到某些东西 常常会跑出 npobject 讯息的错误 查了一下 要用 Handler mHandler = new Handler(); mHandler.post(new Runnable() { public void run() { //某些导致 NPOBJECT ERROR的CODE要放这里 } }); 问题是这样一用後有几个问题 1.变成非同步,需要一个waiting机制 2.如何把param导入,和何把param倒出 似乎变数只要一进 mHandler 内 ,一取用马上又跑出npobject讯息.... 举个例子来说 URL obj = new URL(url); HttpURLConnection con = (HttpURLConnection) obj.openConnection(); 这个如果不放在mHandler.post内去跑 马上 npobect错误.... 逼着我直接使用sokcet来发送 http request ...... 下面更多说明 javascipt内 alert( window.api_obj.propfind_query("url" ,"","") ); mainactivity内 webView.setWebChromeClient(new WebChromeClient()); webView.getSettings().setJavaScriptEnabled(true); webView.addJavascriptInterface(new androidobj(), "api_obj"); //上面建立一个javascipt存取介面给网页的javascipt call webView.loadUrl("file:///android_asset/www/index.html"); public class androidobj { public String propfind_query() { 这里如果有用到 HttpURLConnection con = (HttpURLConnection) obj.openConnection(); 要用handler 不然会 npobject error 但是用了hander後 所取到的东西不能return 如果用finial 这招 变数进入 handler 在外部曲用又会npobject 不知道如何return 和导入 params 最後直接用socket来处理request } } --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.70.105.149
1F:→ TonyQ:问题是 npobject 到底怎麽来的... 12/24 00:01
这问题还在看 目前还没看到有文章写得很清楚的 有一篇 http://blog.csdn.net/onlyou930/article/details/6530248 但看不是很懂 又看到一篇 http://blog.csdn.net/lymon01/article/details/6641496 这里可以看到,NPObject就是NPClass的封装,代表了js的物件本质就是一组函数 webview内的javascript call外部的method 目前遇到只要method中有用到 HttpURLConnection class的就会跳出这讯息 解决法参考 http://www.xuephp.com/main/detail.php?cid=34319 但原因跟细节都没交代得很清楚 这背後应该是不少文章
2F:→ TonyQ:跟碰到 npobject 时你打算怎麽处理 or 怎麽避免他 12/24 00:01
这就是我想问的 以我的问题 我是有解 HttpURLConnection不能用 乾脆自己靠更底层的socket来发request 但是想说有没有比较简单的解法
3F:→ TonyQ:这些东西没写,我们就根本无法讨论啊... 12/24 00:01
4F:→ kai7450:我个人的作法是先sync资料在用callback的方法去call js真 12/24 10:49
5F:→ kai7450:正要做的事,ex:setWebsyncData(callback) 12/24 10:50
6F:→ Elfiend:把所有操作放到service里,用notification传递结果呢? 12/24 11:44
我有用过local service,但是不是用notification来传递结果, 用物件bind的方式来拿method的return值,但是还是一样的状况 service的method如果有用到HttpURLConnection,还是一样npobject报错, 所以我想主要还是 HttpURLConnection 这东西有某些跟js线程上的冲突. 其实也没差拉,只是socket发request烦一点而已, 而且我的功能很可能须要socket客制发送,因为是对应webdav的一些特殊操作method, 像MKCOL PROPFIND 等等,HttpURLConnection好像不支援这些操作method的设定. ※ 编辑: erspicu 来自: 118.171.242.218 (12/24 11:59)







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Gossiping站内搜寻

TOP