/*
* Copyright (C) 2008 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.launcher;
import static android.util.Log.d;
import static android.util.Log.e;
import static android.util.Log.w;
import com.android.launcher.ActionButton.SwipeListener;
import com.android.launcher.DockBar.DockBarListener;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.lang.ref.WeakReference;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import mobi.intuitit.android.content.LauncherIntent;
import mobi.intuitit.android.content.LauncherMetadata;
import com.android.launcher.DockBar.DockBarListener;
import com.android.launcher.catalogue.AppCatalogueFilter;
import com.android.launcher.catalogue.AppCatalogueFilters;
import com.android.launcher.catalogue.AppGroupAdapter;
import com.android.launcher.catalogue.AppInfoMList;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Application;
import android.app.Dialog;
import android.app.SearchManager;
import android.app.WallpaperInfo;
import android.app.WallpaperManager;
import android.appwidget.AppWidgetHostView;
import android.appwidget.AppWidgetManager;
import android.appwidget.AppWidgetProviderInfo;
import android.content.ActivityNotFoundException;
import android.content.BroadcastReceiver;
import android.content.ComponentName;
import android.content.ContentResolver;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.SharedPreferences;
import android.content.Intent.ShortcutIconResource;
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
import android.content.pm.ActivityInfo;
import android.content.pm.LabeledIntent;
import android.content.pm.PackageManager;
import android.content.pm.PackageManager.NameNotFoundException;
import android.content.res.Configuration;
import android.content.res.Resources;
import android.database.ContentObserver;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.PixelFormat;
import android.graphics.Rect;
import android.graphics.RectF;
import android.graphics.Typeface;
import android.graphics.drawable.ColorDrawable;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.os.MessageQueue;
import android.os.Parcelable;
import android.provider.LiveFolders;
import android.text.Selection;
import android.text.SpannableStringBuilder;
import android.text.TextUtils;
import android.text.method.TextKeyListener;
import android.util.Log;
import android.util.SparseArray;
import android.view.Display;
import android.view.HapticFeedbackConstants;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewStub;
import android.view.WindowManager;
import android.view.View.OnLongClickListener;
import android.view.inputmethod.InputMethodManager;
import android.widget.AdapterView;
import android.widget.EditText;
import android.widget.Gallery;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.PopupWindow;
import android.widget.TextView;
import android.widget.Toast;
import android.widget.AdapterView.OnItemSelectedListener;
/**
* Default launcher application.
*/
public final class Launcher extends Activity implements View.OnClickListener, OnLongClickListener, OnSharedPreferenceChangeListener, SwipeListener {
static final String LOG_TAG = "Launcher";
static final boolean LOGD = false;
private static final boolean PROFILE_STARTUP = false;
private static final boolean PROFILE_ROTATE = false;
private static final boolean DEBUG_USER_INTERFACE = false;
private static final int MENU_GROUP_ADD = 1;
private static final int MENU_GROUP_ALMOSTNEXUS = 2;
private static final int MENU_GROUP_CATALOGUE = 3;
private static final int MENU_GROUP_NORMAL = 4;
private static final int MENU_ADD = Menu.FIRST + 1;
private static final int MENU_WALLPAPER_SETTINGS = MENU_ADD + 1;
private static final int MENU_SEARCH = MENU_WALLPAPER_SETTINGS + 1;
private static final int MENU_NOTIFICATIONS = MENU_SEARCH + 1;
private static final int MENU_SETTINGS = MENU_NOTIFICATIONS + 1;
private static final int MENU_ALMOSTNEXUS = MENU_SETTINGS + 1;
private static final int MENU_APP_GRP_CONFIG = MENU_SETTINGS + 2;
private static final int MENU_APP_GRP_RENAME = MENU_SETTINGS + 3;
private static final int MENU_APP_SWITCH_GRP = MENU_SETTINGS + 4;
private static final int MENU_APP_DELETE_GRP = MENU_SETTINGS + 5;
private static final int REQUEST_CREATE_SHORTCUT = 1;
private static final int REQUEST_CREATE_LIVE_FOLDER = 4;
private static final int REQUEST_CREATE_APPWIDGET = 5;
private static final int REQUEST_PICK_APPLICATION = 6;
private static final int REQUEST_PICK_SHORTCUT = 7;
private static final int REQUEST_PICK_LIVE_FOLDER = 8;
private static final int REQUEST_PICK_APPWIDGET = 9;
private static final int REQUEST_PICK_ANYCUT=10;
private static final int REQUEST_SHOW_APP_LIST = 11;
private static final int REQUEST_EDIT_SHIRTCUT = 12;
static final String EXTRA_SHORTCUT_DUPLICATE = "duplicate";
static final String EXTRA_CUSTOM_WIDGET = "custom_widget";
static final String SEARCH_WIDGET = "search_widget";
static final int WALLPAPER_SCREENS_SPAN = 2;
static final int SCREEN_COUNT = 5;
static final int DEFAULT_SCREN = 2;
static final int NUMBER_CELLS_X = 4;
static final int NUMBER_CELLS_Y = 4;
private static final int DIALOG_CREATE_SHORTCUT = 1;
static final int DIALOG_RENAME_FOLDER = 2;
static final int DIALOG_CHOOSE_GROUP = 3;
static final int DIALOG_NEW_GROUP = 4;
static final int DIALOG_DELETE_GROUP_CONFIRM = 5;
private static final String PREFERENCES = "launcher.preferences";
// Type: int
private static final String RUNTIME_STATE_CURRENT_SCREEN = "launcher.current_screen";
// Type: boolean
private static final String RUNTIME_STATE_ALL_APPS_FOLDER = "launcher.all_apps_folder";
// Type: long
private static final String RUNTIME_STATE_USER_FOLDERS = "launcher.user_folder";
// Type: int
private static final String RUNTIME_STATE_PENDING_ADD_SCREEN = "launcher.add_screen";
// Type: int
private static final String RUNTIME_STATE_PENDING_ADD_CELL_X = "launcher.add_cellX";
// Type: int
private static final String RUNTIME_STATE_PENDING_ADD_CELL_Y = "launcher.add_cellY";
// Type: int
private static final String RUNTIME_STATE_PENDING_ADD_SPAN_X = "launcher.add_spanX";
// Type: int
private static final String RUNTIME_STATE_PENDING_ADD_SPAN_Y = "launcher.add_spanY";
// Type: int
private static final String RUNTIME_STATE_PENDING_ADD_COUNT_X = "launcher.add_countX";
// Type: int
private static final String RUNTIME_STATE_PENDING_ADD_COUNT_Y = "launcher.add_countY";
// Type: int[]
private static final String RUNTIME_STATE_PENDING_ADD_OCCUPIED_CELLS = "launcher.add_occupied_cells";
// Type: boolean
private static final
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。
资源推荐
资源详情
资源评论
收起资源包目录
基于Android的AnderWeb-android_packages_apps_Launcher-4458ee4.zip (556个子文件)
.gitignore 30B
Launcher.java 177KB
Workspace.java 79KB
LauncherModel.java 73KB
AllAppsSlidingView.java 65KB
CellLayout.java 41KB
MyLauncherSettings.java 37KB
WidgetSpace.java 34KB
MultiTouchController.java 33KB
LauncherProvider.java 33KB
SimpleRemoteViews.java 32KB
DragLayer.java 24KB
AlmostNexusSettingsHelper.java 22KB
MiniLauncher.java 20KB
IconShader.java 18KB
ResizeViewHandler.java 18KB
CustomShirtcutActivity.java 17KB
WidgetListAdapter.java 17KB
ColorPickerDialog.java 17KB
Search.java 15KB
Utilities.java 14KB
CustomScroller.java 14KB
NumberPicker.java 13KB
WidgetCursorAdapter.java 12KB
DeleteZone.java 12KB
ActionButton.java 12KB
BoundRemoteViews.java 11KB
HolderLayout.java 11KB
AllAppsGridView.java 10KB
ApplicationsAdapter.java 9KB
LauncherIntent.java 9KB
DockBar.java 8KB
DesktopIndicator.java 8KB
LiveFolderAdapter.java 8KB
LauncherSettings.java 8KB
WallpaperChooser.java 7KB
ActivityPickerActivity.java 7KB
Folder.java 6KB
LauncherActions.java 6KB
AppInfoMList.java 6KB
ListViewImageManager.java 6KB
PreviewsHolder.java 6KB
BubbleTextView.java 6KB
ApplicationInfo.java 6KB
FolderIcon.java 6KB
UserFolder.java 5KB
LiveFolder.java 5KB
AppCatalogueFilters.java 5KB
InstallShortcutReceiver.java 5KB
IconHighlights.java 4KB
WidgetRemoteViewsListAdapter.java 4KB
WidgetCellLayout.java 4KB
PreviewPager.java 4KB
LauncherAppWidgetHostView.java 4KB
CounterReceiver.java 4KB
ItemInfo.java 4KB
AddAdapter.java 4KB
CounterImageView.java 4KB
CounterTextView.java 4KB
PreviewPreference.java 4KB
AppGroupAdapter.java 3KB
UninstallShortcutReceiver.java 3KB
HandleView.java 3KB
DialogSeekBarPreference.java 3KB
ApplicationListAdapter.java 3KB
LiveFolderIcon.java 3KB
NumberPickerButton.java 2KB
DropTarget.java 2KB
ScreensAdapter.java 2KB
LiveFolderInfo.java 2KB
DragController.java 2KB
FlingGesture.java 2KB
FastBitmapDrawable.java 2KB
LauncherAppWidgetInfo.java 2KB
ElasticInterpolator.java 1KB
LauncherAppWidgetHost.java 1KB
UserFolderInfo.java 1KB
Widget.java 1KB
AppCatalogueFilter.java 983B
LauncherApplication.java 918B
FolderInfo.java 901B
AppListInfo.java 853B
WidgetContentObserver.java 839B
DragSource.java 837B
DragScroller.java 780B
LauncherMetadata.java 777B
Drawer.java 770B
ScrollableBaseAdapter.java 498B
WidgetDataChangeListener.java 154B
wallpaper_adw.jpg 64KB
wallpaper_adw.jpg 28KB
wallpaper_adw_small.jpg 6KB
wallpaper_adw_small.jpg 3KB
Android.mk 853B
MODULE_LICENSE_APACHE2 0B
NOTICE 10KB
showpreviews_button.png 14KB
movetodefault_button.png 11KB
ic_launcher_home.png 10KB
showhidestatusbar_button.png 10KB
共 556 条
- 1
- 2
- 3
- 4
- 5
- 6
资源评论
CrMylive.
- 粉丝: 1w+
- 资源: 4万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- C语言-leetcode题解之70-climbing-stairs.c
- C语言-leetcode题解之68-text-justification.c
- C语言-leetcode题解之66-plus-one.c
- C语言-leetcode题解之64-minimum-path-sum.c
- C语言-leetcode题解之63-unique-paths-ii.c
- C语言-leetcode题解之62-unique-paths.c
- C语言-leetcode题解之61-rotate-list.c
- C语言-leetcode题解之59-spiral-matrix-ii.c
- C语言-leetcode题解之58-length-of-last-word.c
- 计算机编程课程设计基础教程
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功