android浏览器开发小技巧集锦(转)
本人和朋友们做了一段时间浏览器,将一些小技巧分享出来,先写一部分,慢慢写,同时也为我们的浏览器打打广告
我们的浏览器将要上线,名叫沙发浏览
1.网页内的右键菜单

- public boolean onLongClick(View view) {
- // 获取点击的元素
- HitTestResult mResult = mWebView.getHitTestResult();
- final int type = mResult.getType();
- switch (type) {
- case HitTestResult.ANCHOR_TYPE:
- case HitTestResult.SRC_ANCHOR_TYPE:
- //点击的是链接
- break;
- case HitTestResult.IMAGE_TYPE:
- case HitTestResult.IMAGE_ANCHOR_TYPE:
- case HitTestResult.SRC_IMAGE_ANCHOR_TYPE:
- //点击的是图片
- break;
- default:
- //点击的是空白处
- break;
- }
- return true;
- }
根据是图片还是链接还是空白做判断
2.网页内的自由复制
转载请注明出处:http://blog.csdn.net/ethan_xue/article/details/7748075

- /**
- * 网页里 复制粘贴
- * @param view webView
- * @author ethan
- */
- private void emulateShiftHeld(KeyEvent.Callback view)
- {
- try
- {
- KeyEvent shiftPressEvent = new KeyEvent(0, 0, KeyEvent.ACTION_DOWN,
- KeyEvent.KEYCODE_SHIFT_LEFT, 0, 0);
- shiftPressEvent.dispatch(view);
- } catch (Exception e)
- {
- }
- }
3.出错界面
webkit自带的出错界面不够霸气,于是改为自己做的出错界面
- new WebViewClient()
- ...此为背景
- @Override
- public void onReceivedError(WebView view, int errorCode,
- String description, String failingUrl) {
- view.stopLoading();
- view.clearView();
- // 显示出错界面
- mWebView.loadUrl("file:///android_asset/error.html");
- }
4.点外部链接调用自己的浏览器
在manifest.xml里主activity加入intent
- <p style="color: rgb(51, 51, 51); font-family: Arial; font-size: 16px; line-height: 25px; text-align: left; "><!-- For these schemes were not particular MIME type has been
- supplied, we are a good candidate. -->
- <intent-filter>
- <action android:name="android.intent.action.VIEW" />
- <category android:name="android.intent.category.DEFAULT" />
- <category android:name="android.intent.category.BROWSABLE" />
- <data android:scheme="http" />
- <data android:scheme="https" />
- <data android:scheme="about" />
- <data android:scheme="javascript" />
- </intent-filter>
- <!-- For these schemes where any of these particular MIME types
- have been supplied, we are a good candidate. -->
- <intent-filter>
- <action android:name="android.intent.action.VIEW" />
- <category android:name="android.intent.category.BROWSABLE" />
- <category android:name="android.intent.category.DEFAULT" />
- <data android:scheme="http" />
- <data android:scheme="https" />
- <data android:scheme="inline" />
- <data android:mimeType="text/html"/>
- <data android:mimeType="text/plain"/>
- <data android:mimeType="application/xhtml+xml"/>
- <data android:mimeType="application/vnd.wap.xhtml+xml"/>
- </intent-filter>
- <action android:name="android.intent.action.VIEW" />
- <category android:name="android.intent.category.DEFAULT" />
- <category android:name="android.intent.category.BROWSABLE" />
- <data android:scheme="file" />
- </intent-filter></p>
外部调用就ok了,连file文件都能调用,若自己调用的话
- Uri uri = Uri.parse("file://data/data/test.html");
- // Uri uri = Uri.parse("http://m.baidu.com");
- Intent it = new Intent(Intent.ACTION_VIEW, uri);
- context.startActivity(it);

http://blog.csdn.net/ethan_xue/article/details/7748075
android浏览器开发小技巧集锦(转)的更多相关文章
- flex开发小技巧集锦
关于flex开发网上有非常多的相关信息介绍,因此我们要想学习关于flex开发的知识信息技能是一件非常简单和方便的事情.而针对于flex开发小编要告诉大家的是一些flex开发小技巧.利用这些小技巧能够有 ...
- Android开发学习之路-Android Studio开发小技巧
上一次发过了一个介绍Studio的,这里再发一个补充下. 我们都知道,Android Studio的功能是非常强大的,也是很智能的.如果有人告诉你学Android开发要用命令行,你可以告诉他Andro ...
- android应用开发小技巧
1,实现应用可以安装到SD卡里面去:在AndroidManifest.xml文件的manifest里面添加下面一行: 1 android:installLocation="preferExt ...
- 移动Web开发小技巧
移动Web开发小技巧 添加到主屏后的标题(IOS) name="apple-mobile-web-app-title" content="标题"> 启用 ...
- LoadRunner小技巧集锦
preftest 性能测试工作室,专注于性能测试技术研究(www.AutomationQA.com) LoadRunner小技巧集锦 1.录制脚本中包含中文,出现乱码怎么办? 把录制选项中的Suppo ...
- Android应用开发-小巫CSDN博客clientJsoup篇
Android应用开发-小巫CSDN博客clientJsoup篇 距上一篇博客已经过去了两个星期,小巫也认为很抱歉,由于在忙着做另外一个项目,差点儿抽不出空来,这不小巫会把剩下的博文全部在国庆补上.本 ...
- Android应用开发-小巫CSDN博客client之显示博文具体内容
Android应用开发-小巫CSDN博客客户端之显示博文具体内容 上篇博文给大家介绍的是怎样嵌入有米广告而且获取收益,本篇博客打算讲讲关于怎样在一个ListView里显示博文的具体信息.这个可能是童鞋 ...
- 最强 Android Studio 使用小技巧和快捷键
写在前面 本文翻译自 Android Studio Tips by Philippe Breault,一共收集了62个 Android Studio 使用小技巧和快捷键. 根据这些小技巧的使用场景,本 ...
- Android课程---Android Studio使用小技巧:提取方法代码片段
这篇文章主要介绍了Android Studio使用小技巧:提取方法代码片段,本文分享了一个快速复制粘贴方法代码片段的小技巧,并用GIF图演示,需要的朋友可以参考下 今天来给大家介绍一个非常有用的Stu ...
随机推荐
- Android SwipeRefreshLayout 官方下拉刷新控件介绍
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/24521483 下面App基本都有下拉刷新的功能,以前基本都使用XListView ...
- Android多点触控(图片的缩放Demo)
本文主要介绍Android的多点触控,使用了一个图片缩放的实例,来更好的说明其原理.须要实现OnTouchListener接口,重写当中的onTouch方法. 实现效果图: 源码: 布局文 ...
- 一个不错的 png压缩工具 pngquant 使用介绍 批量压缩png
1.Png 简介. 我们知道Png 有4个通道,RGBA, 多了一个表示透明的.png 有 png 32, 24, 8 等. 大致我理解的是表示颜色的多少. 数字越小,文件就越小.常见的压缩方式是导入 ...
- BZOJ 1052 HAOI2007 覆盖问题 二分法答案+DFS
标题效果:特定n点.涵盖所有的点与同方三面.斧头要求方垂直边界,最小平方的需求方长值 最大值至少.答案是很明显的二分法 但验证是一个问题 考虑仅仅有三个正方形,故用一个最小矩形覆盖这三个正方形时至少有 ...
- 写你自己struts1框架
前言 文本 它们的定义Struts1 commons-digester.jar解析XML 实现XML标签到对象的转换 1.依据目标XML的结构定义解析规则文件 參照rule.xml 2.创建集合对象接 ...
- android中获取屏幕的信息
获取屏幕信息比较简单,可以通过android的sdk自带的工具类DisplayMetrics.话不多说,上代码: // 获取屏幕的信息 DisplayMetrics dm = new DisplayM ...
- Shuttle ESB(四)——宣布订阅模式实例介绍(1)
前,我的重点是关注的三篇文章Shuttle ESB入境和宏观的概念范例. Shuttle ESB模式:请求/对应模式与Pub/Sub模式. 关于这两种模式的区分,请看以下文章的介绍:Shuttle E ...
- RH033读书笔记(14)-Lab 15 Switching Users and Setting a Umask
Lab 15 Switching Users and Setting a Umask Goal: Become familiar with the use of several essential c ...
- Kohana 数据库
只要不使用官方网站的教程,自己摸索出来的,有一个错误,当我们指了出来,哦,,好吧共同进步~ 首先配置:modules\database\config\database.php <?php 'de ...
- Java 输出指定编码的字符串
Java Sting类有个根据byte,字符编码来输出的构造函数.以下为java文档中的解释.public String(byte[] bytes, String charsetName) throw ...