/*
* Copyright (C) 2006 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.browser;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.app.SearchManager;
import android.content.ActivityNotFoundException;
import android.content.BroadcastReceiver;
import android.content.ComponentName;
import android.content.ContentProvider;
import android.content.ContentProviderClient;
import android.content.ContentResolver;
import android.content.ContentUris;
import android.content.ContentValues;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.content.res.Configuration;
import android.content.res.Resources;
import android.database.Cursor;
import android.database.DatabaseUtils;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Picture;
import android.graphics.PixelFormat;
import android.graphics.Rect;
import android.graphics.drawable.Drawable;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.Uri;
import android.net.WebAddress;
import android.net.http.SslCertificate;
import android.net.http.SslError;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Debug;
import android.os.Environment;
import android.os.Handler;
import android.os.Message;
import android.os.PowerManager;
import android.os.Process;
import android.os.ServiceManager;
import android.os.SystemClock;
import android.provider.Browser;
import android.provider.ContactsContract;
import android.provider.ContactsContract.Intents.Insert;
import android.provider.Downloads;
import android.provider.MediaStore;
import android.speech.RecognizerResultsIntent;
import android.text.IClipboard;
import android.text.TextUtils;
import android.text.format.DateFormat;
import android.util.AttributeSet;
import android.util.Log;
import android.util.Patterns;
import android.view.ContextMenu;
import android.view.Gravity;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import android.view.WindowManager;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.MenuItem.OnMenuItemClickListener;
import android.webkit.CookieManager;
import android.webkit.CookieSyncManager;
import android.webkit.DownloadListener;
import android.webkit.HttpAuthHandler;
import android.webkit.PluginManager;
import android.webkit.SslErrorHandler;
import android.webkit.URLUtil;
import android.webkit.ValueCallback;
import android.webkit.WebChromeClient;
import android.webkit.WebHistoryItem;
import android.webkit.WebIconDatabase;
import android.webkit.WebView;
import android.widget.EditText;
import android.widget.FrameLayout;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;
import android.accounts.Account;
import android.accounts.AccountManager;
import android.accounts.AccountManagerFuture;
import android.accounts.AuthenticatorException;
import android.accounts.OperationCanceledException;
import android.accounts.AccountManagerCallback;
import com.android.common.Search;
import com.android.common.speech.LoggingEvents;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
import java.net.URLEncoder;
import java.text.ParseException;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class BrowserActivity extends Activity
implements View.OnCreateContextMenuListener, DownloadListener {
/* Define some aliases to make these debugging flags easier to refer to.
* This file imports android.provider.Browser, so we can't just refer to "Browser.DEBUG".
*/
private final static boolean DEBUG = com.android.browser.Browser.DEBUG;
private final static boolean LOGV_ENABLED = com.android.browser.Browser.LOGV_ENABLED;
private final static boolean LOGD_ENABLED = com.android.browser.Browser.LOGD_ENABLED;
// These are single-character shortcuts for searching popular sources.
private static final int SHORTCUT_INVALID = 0;
private static final int SHORTCUT_GOOGLE_SEARCH = 1;
private static final int SHORTCUT_WIKIPEDIA_SEARCH = 2;
private static final int SHORTCUT_DICTIONARY_SEARCH = 3;
private static final int SHORTCUT_GOOGLE_MOBILE_LOCAL_SEARCH = 4;
private static class ClearThumbnails extends AsyncTask<File, Void, Void> {
@Override
public Void doInBackground(File... files) {
if (files != null) {
for (File f : files) {
if (!f.delete()) {
Log.e(LOGTAG, f.getPath() + " was not deleted");
}
}
}
return null;
}
}
/**
* This layout holds everything you see below the status bar, including the
* error console, the custom view container, and the webviews.
*/
private FrameLayout mBrowserFrameLayout;
@Override
public void onCreate(Bundle icicle) {
if (LOGV_ENABLED) {
Log.v(LOGTAG, this + " onStart");
}
super.onCreate(icicle);
// test the browser in OpenGL
// requestWindowFeature(Window.FEATURE_OPENGL);
// enable this to test the browser in 32bit
if (false) {
getWindow().setFormat(PixelFormat.RGBX_8888);
BitmapFactory.setDefaultConfig(Bitmap.Config.ARGB_8888);
}
setDefaultKeyMode(DEFAULT_KEYS_SEARCH_LOCAL);
mResolver = getContentResolver();
// If this was a web search request, pass it on to the default web
// search provider and finish this activity.
if (handleWebSearchIntent(getIntent())) {
finish();
return;
}
mSecLockIcon = Resources.getSystem().getDrawable(
android.R.drawable.ic_secure);
mMixLockIcon = Resources.getSystem().getDrawable(
android.R.drawable.ic_partial_secure);
FrameLayout frameLayout = (FrameLayout) getWindow().getDecorView()
.findViewById(com.android.internal.R.id.content);
mBrowserFrameLayout = (FrameLayout) LayoutInflater.from(this)
.inflate(R.layout.custom_screen, null);
mContentView = (FrameLayout) mBrowserFrameLayout.findViewById(
R.id.main_content);
mErrorConsoleContainer = (LinearLayout) mBrowserFrameLayout
.findViewById(R.id.error_console);
mCustomViewContainer = (FrameLayout) mBrowserFrameLayout
没有合适的资源?快使用搜索试试~ 我知道了~
浏览器&WebView&JS&HTML5 浏览器的源码 可以下载修改跳转指定的网址(程序源码).rar
共267个文件
png:100个
xml:90个
java:47个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 3 浏览量
2023-03-17
08:31:37
上传
评论
收藏 5.91MB RAR 举报
温馨提示
免责声明:资料部分来源于合法的互联网渠道收集和整理,部分自己学习积累成果,供大家学习参考与交流。收取的费用仅用于收集和整理资料耗费时间的酬劳。 本人尊重原创作者或出版方,资料版权归原作者或出版方所有,本人不对所涉及的版权问题或内容负法律责任。如有侵权,请举报或通知本人删除。
资源推荐
资源详情
资源评论
收起资源包目录
浏览器&WebView&JS&HTML5 浏览器的源码 可以下载修改跳转指定的网址(程序源码).rar (267个子文件)
config 335B
description 73B
exclude 240B
HEAD 222B
HEAD 32B
HEAD 23B
bindings_test.html 7KB
flashtest.html 531B
pack-3be7b8062ef24fafd97c7d0ff1819e66a73fb07f.idx 249KB
index 25KB
BrowserActivity.java 160KB
Tab.java 76KB
BrowserProvider.java 45KB
BrowserBookmarksPage.java 30KB
WebsiteSettingsActivity.java 27KB
BrowserSettings.java 24KB
BrowserBookmarksAdapter.java 22KB
BrowserDownloadPage.java 21KB
TabControl.java 20KB
WebStorageSizeManager.java 18KB
TitleBar.java 16KB
PopularUrlsTest.java 14KB
BookmarkWidgetService.java 13KB
BrowserHistoryPage.java 13KB
WebStorageSizeManagerUnitTests.java 13KB
BrowserBackupAgent.java 13KB
DateSortedExpandableListAdapter.java 12KB
ErrorConsoleView.java 11KB
JNIBindingsTest.java 11KB
Bookmarks.java 9KB
AddBookmarkPage.java 9KB
BrowserDownloadAdapter.java 9KB
BrowserPreferencesPage.java 8KB
ActiveTabsPage.java 8KB
JNIBindingsTestApp.java 7KB
CombinedBookmarkHistoryActivity.java 7KB
FindDialog.java 7KB
SystemAllowGeolocationOrigins.java 7KB
TestWebChromeClient.java 6KB
MeshTracker.java 6KB
BrowserProviderTests.java 6KB
FetchUrlMimeType.java 5KB
DownloadTouchIcon.java 5KB
OpenDownloadReceiver.java 5KB
BrowserHomepagePreference.java 4KB
GeolocationPermissionsPrompt.java 4KB
BookmarkItem.java 4KB
TestWebViewClient.java 4KB
HistoryItem.java 3KB
Dots.java 3KB
BrowserYesNoPreference.java 2KB
Browser.java 2KB
LogTag.java 2KB
AddNewBookmark.java 2KB
BookmarkWidgetProvider.java 2KB
BookmarkSearch.java 1KB
BrowserLaunchPerformance.java 627B
EventLogTags.logtags 854B
master 222B
master 41B
CleanSpec.mk 2KB
Android.mk 1KB
Android.mk 445B
MODULE_LICENSE_APACHE2 0B
NOTICE 11KB
pack-3be7b8062ef24fafd97c7d0ff1819e66a73fb07f.pack 5.33MB
packed-refs 5KB
ic_launcher_browser.png 8KB
ic_launcher_drm_file.png 4KB
ic_search_category_history.png 4KB
ic_search_category_browser.png 4KB
ic_dialog_browser_certificate_secure.png 4KB
ic_dialog_browser_certificate_partially_secure.png 4KB
ic_launcher_browser.png 4KB
magnifying_glass.png 4KB
ic_search_category_bookmark.png 3KB
ic_dialog_browser_security_bad.png 3KB
default_video_poster.png 3KB
ic_dialog_browser_security_good.png 3KB
ic_launcher_shortcut_browser_bookmark.png 3KB
ssl_icon.png 3KB
dialog_divider_horizontal_light.9.png 3KB
appwidget_bg.9.png 3KB
ic_menu_new_window.png 3KB
browser_thumbnail.png 3KB
ic_launcher_drm_file.png 3KB
ic_search_category_history.png 3KB
ic_search_category_suggest.png 2KB
ic_launcher_shortcut_browser_bookmark_icon.png 2KB
ic_search_category_browser.png 2KB
ic_dialog_browser_certificate_secure.png 2KB
ic_dialog_browser_certificate_partially_secure.png 2KB
ic_menu_add_bookmark.png 2KB
ic_tab_history_selected.png 2KB
ic_launcher_shortcut_browser_bookmark.png 2KB
textfield_voice_search.9.png 2KB
magnifying_glass.png 2KB
ic_menu_bookmarks.png 2KB
ic_list_gps_denied.png 2KB
browser_thumbnail.png 2KB
共 267 条
- 1
- 2
- 3
资源评论
金枝玉叶9
- 粉丝: 137
- 资源: 7640
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 以简单、易用、高性能为目标、开源的时序数据库,支持Linux及Windows, Time Series Database.zip
- python-leetcode面试题解之第198题打家劫舍-题解.zip
- python-leetcode面试题解之第191题位1的个数-题解.zip
- python-leetcode面试题解之第186题反转字符串中的单词II-题解.zip
- 一个基于python的web后端高性能开发框架,下载可用
- python-leetcode面试题解之第179题最大数-题解.zip
- python-leetcode面试题解之第170题两数之和III数据结构设计-题解.zip
- python-leetcode面试题解之第168题Excel表列名称-题解.zip
- python-leetcode面试题解之第167题两数之和II输入有序数组-题解.zip
- python-leetcode面试题解之第166题分数到小数-题解.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功