亲爱的,我是bca的学生.我必须在上个学期做一个项目.所以我决定创建在android OS上运行的网络浏览器,但我完全是为了这个应用程序.所以,任何人都可以帮助我.我已经安装了所有必需的工具,如jdk,android sdk 3.0,eclipse.但现在我不知道从哪里开始开发浏览器.所以请帮助我......我只有2个月的时间来做这个项目.这可能在2个月内完成吗?
我有一个html5移动应用程序,其中一切都存在于一个页面上,我使用history.back/popstate/etc来更改页面的内容(通过jQuery Mobile).我正在使用Google Analytics跟踪各种事件,并在一个页面上跟踪用户是否通过特定按钮退出:
$('#my-back-button').bind('tap', function() {
_gaq.push(['_trackEvent', 'mycategory', 'myaction']);
history.back();
return false;
});
Run Code Online (Sandbox Code Playgroud)
在android 2.2浏览器中,调用了history.back()但是没有触发onpopstate并且页面没有被更改.如果我放在window.onpopstate = function() { alert("!"); };history.back()之前,我看不到警报.
如果我反转两行(history.back()首先,然后_gaq.push),它似乎工作,但我不能依赖于我的代码中的这种排序.
没有例外被抛出.它在iOS和桌面Chrome中运行良好.
任何想法为什么history.back()在谷歌分析调用后不起作用?
我想问一下为什么我的HTC Desire HD的浏览器会报告视口的宽度为369px,即使屏幕的实际像素大小为480x800 WVGA.
我在我的页面中使用这个CSS样式:
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0" />
Run Code Online (Sandbox Code Playgroud)
你能解释一下这个奇怪的行为,以及如何强制Android浏览器实际将视口的宽度设置为480px而不是奇怪的369px?
感谢您的任何帮助.
我正在修改Jump'n'Bump游戏的HTML5端口,以便在Apple和基于Android的移动设备上运行.我使用廉价的1 GHz Cortex-A8 Android 4.0.3平板电脑进行测试.我在系统的浏览器中遇到了奇怪的行为.我通常得到一个约1 FPS的非常低的帧速率(每帧重新绘制整个屏幕,使用setTimeout ......).但是,当我在<canvas>标签之前添加一个具有位置:固定CSS属性的<div>时,帧速率突然增加,游戏变得可玩.
有人可以解释这个奇怪的现象吗?Android浏览器中是否存在一些影响画布性能的渲染模式?这是跨平台问题吗?如何确保页面在用户的浏览器中有效运行?
我正在处理的代码大纲:
<!DOCTYPE html>
<html>
<title>Jump'n'Bump - HTML5</title>
<meta http-Equiv="Cache-Control" Content="no-cache">
<meta http-Equiv="Pragma" Content="no-cache">
<meta http-Equiv="Expires" Content="0">
<meta name="viewport" content = "width=400px, user-scaleable=no">
<!-- javascript files included here -->
<script type="text/javascript" src="main.js"></script>
<style type="text/css">
body { margin: 0px 0px 0xp 0px }
canvas { border: 0px solid black; }
img.resource { display:none; }
#fixed_div { position: fixed; width: 10px; height: 10px; left: 0px; top: 0px; }
#gameArea { position: absolute; left: 0px; top: …Run Code Online (Sandbox Code Playgroud) 最近,我一直试图找到(并希望修复)频繁的Android 2.3浏览器崩溃,这些崩溃会影响SB Nation博客网络.用户将导航到页面,它将显示为加载,然后关于何时您希望DOM完成触发,浏览器似乎强行关闭,您将被踢到主屏幕.这不会发生在每个页面加载,所以如果您打开浏览器并再试一次,它通常会加载正常.
我已经在我自己的手机上多次重现了这个问题,HTC Thunderbolt(2.3.4)以及Droid Bionic(2.3.4).我没有Android开发经验,但我认为连接adb调试器可能会让我对这个问题的原因有所了解.以下是我捕获的崩溃的一些日志:
(我会在生产中发布导致这些崩溃的一些URL,但我已经达到了我的两个链接限制.)
正如您可能注意到的那样,所有HTC日志都不同,而仿生的日志似乎没有提供太多技术细节.这是我在所有HTC日志中找到的唯一常见线程:
D/skia (14225): createPlugin (300,150) screen proportion:(w,h)=(0.813008,0.039288), content ratio:2.000000 mainUrl:http://athleticsnation.local:3000/
D/skia (14225): createPlugin F10 typical2 video content (300,150)/(369,3818), url=
Run Code Online (Sandbox Code Playgroud)
我的猜测是F10 == Flash 10,但Droid Bionic甚至没有安装Flash,所以我不相信这是原因.
无论如何,我对于导致这些崩溃的理论感到茫然.有没有办法获得有关这些崩溃的更准确信息?无效标记会导致浏览器崩溃吗?JavaScript限制?任何帮助将不胜感激.
我正在寻找一种方法来获取用户在Android浏览器应用程序上访问的当前URL.我发现我可以Browser.BOOKMARKS_URI使用以下技术从数据库中获取最后访问过的URL :
Cursor cursor = context.getContentResolver().query(Browser.BOOKMARKS_URI,
Browser.HISTORY_PROJECTION, null, null,
Browser.BookmarkColumns.DATE + " DESC");
cursor.moveToNext();
String url = cursor.getString(Browser.HISTORY_PROJECTION_URL_INDEX);
cursor.close();
Run Code Online (Sandbox Code Playgroud)
这样做的问题是,Browser.BOOKMARKS_URI当用户按下以便导航到浏览器中的上一页时,db不会更新,并且查询返回不正确的结果.
请参阅以下示例:
有没有人知道如何返回用户正在查看的正确网址?
问题与BlobBuilder和新的Blob构造函数之间的区别有什么不重复?
我在做网络应用程序.要上传我使用的图像Blob,以防万一BlobBuilder.Blob运行良好,但Blob不能在Android本机浏览器,Android本机浏览器使用BlobBuilder.我期待,Blob并BlobBuilder返回相同的blob,但他们没有.这是我的代码:
base64toBlob: function(b64Data, contentType, sliceSize) {
var BlobBuilder, blob, byteArray, byteCharacters, byteNumbers, charCodeFromCharacter, err, posIndex;
if (contentType == null) {
contentType = '';
}
if (sliceSize == null) {
sliceSize = 1024;
}
posIndex = b64Data.indexOf('base64,');
if (posIndex !== -1) {
b64Data = b64Data.substring(posIndex + 7);
}
charCodeFromCharacter = function(c) {
return c.charCodeAt(0);
};
byteCharacters = atob(b64Data.replace(/\s/g, ''));
byteNumbers = …Run Code Online (Sandbox Code Playgroud) 我有一个包含大量文本内容的WebView.我正在使用以下WebView设置:
settings.setJavaScriptEnabled(true);
settings.setLoadWithOverviewMode(true);
settings.setUseWideViewPort(true);
settings.setSupportZoom(false);
settings.setBuiltInZoomControls(false);
webview.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
webview.setScrollbarFadingEnabled(false);
Run Code Online (Sandbox Code Playgroud)
Html视口设置为:
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
Run Code Online (Sandbox Code Playgroud)
问题是滚动条在布局之外,如下所示:

我的Android布局是:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?android:attr/actionBarSize"
android:background="@color/colorPrimary"
android:elevation="4dp"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
<LinearLayout
android:id="@+id/frame_container"
android:layout_width="match_parent"
android:layout_height="match_parent">
<WebView
android:id="@+id/webView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud) android webview android-webview android-browser android-websettings
我想在Android浏览器的网页上禁用双选项卡缩放.我尝试防止触摸开始和touchmove默认,取消bubble/propogarion.甚至尝试了jquery mobile doubletap事件,但它在元素缩放后触发.
我正在尝试整合"奖励邀请"逻辑.我想为此做的是为每个用户生成一个独特的URl.当朋友点击该URL时,他将被定向到一个页面,然后被定向到该Playstore.在页面上,具有唯一ID的cookie存储在设备上.
注 - (用户可以在任何浏览器中打开链接)
当设备上的应用程序启动时,我会获取使用上面保存的cookie,如果可用,则将其发送到服务器,用户可以轻松识别并获得奖励.
这看起来很直接,但是我被困在我必须阅读cookie并提取id的位置.
我读到这说不可能.:(我也试过以下
List<Cookie> cookies = new DefaultHttpClient().getCookieStore()
.getCookies();
if (cookies.isEmpty()) {
System.out.println("None Cookies");
} else {
for (int i = 0; i < cookies.size(); i++) {
System.out.println("Cookie - " + cookies.get(i).toString());
}
}
Run Code Online (Sandbox Code Playgroud)
但没有运气.我一直收到"无饼干".
我的问题:
谢谢你的光临.
android-browser ×10
android ×7
html5 ×2
javascript ×2
blob ×1
canvas ×1
cookies ×1
css3 ×1
debugging ×1
frame-rate ×1
java ×1
mobile ×1
performance ×1
url ×1
webview ×1