Loading packages/SettingsProvider/etc/Android.mkdeleted 100644 → 0 +0 −33 Original line number Diff line number Diff line # # 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. # LOCAL_PATH := $(my-dir) ######################## include $(CLEAR_VARS) LOCAL_MODULE := bookmarks.xml LOCAL_MODULE_TAGS := user # This will install the file in /system/etc # LOCAL_MODULE_CLASS := ETC LOCAL_SRC_FILES := $(LOCAL_MODULE) include $(BUILD_PREBUILT) packages/SettingsProvider/etc/bookmarks.xml→packages/SettingsProvider/res/xml/bookmarks.xml +2 −6 Original line number Diff line number Diff line Loading @@ -32,8 +32,8 @@ class="com.google.android.gm.ConversationListActivityGmail" shortcut="g" /> <bookmark package="com.android.providers.im" class="com.android.providers.im.LandingPage" package="com.android.im" class="com.android.im.app.LandingPage" shortcut="i" /> <bookmark package="com.android.calendar" Loading @@ -53,8 +53,4 @@ package="com.android.mms" class="com.android.mms.ui.ConversationList" shortcut="s" /> <bookmark package="com.google.android.youtube" class="com.google.android.youtube.HomeActivity" shortcut="y" /> </bookmarks> packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java +32 −49 Original line number Diff line number Diff line Loading @@ -23,40 +23,29 @@ import android.content.Intent; import android.content.pm.ActivityInfo; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; import android.content.pm.ServiceInfo; import android.content.res.Resources; import android.content.res.XmlResourceParser; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDoneException; import android.database.sqlite.SQLiteException; import android.database.sqlite.SQLiteOpenHelper; import android.database.sqlite.SQLiteStatement; import android.media.AudioManager; import android.media.AudioService; import android.net.ConnectivityManager; import android.os.Environment; import android.os.SystemProperties; import android.provider.Settings; import android.provider.Settings.Secure; import android.speech.RecognitionService; import android.speech.RecognizerIntent; import android.text.TextUtils; import android.util.AttributeSet; import android.util.Config; import android.util.Log; import android.util.Xml; import com.android.internal.telephony.RILConstants; import com.android.internal.util.XmlUtils; import com.android.internal.widget.LockPatternUtils; import com.android.internal.widget.LockPatternView; import org.xmlpull.v1.XmlPullParser; import org.xmlpull.v1.XmlPullParserException; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.util.List; Loading @@ -65,11 +54,6 @@ import java.util.List; * Mostly just has a bit {@link #onCreate} to initialize the database. */ public class DatabaseHelper extends SQLiteOpenHelper { /** * Path to file containing default bookmarks, relative to ANDROID_ROOT. */ private static final String DEFAULT_BOOKMARKS_PATH = "etc/bookmarks.xml"; private static final String TAG = "SettingsProvider"; private static final String DATABASE_NAME = "settings.db"; Loading Loading @@ -158,7 +142,6 @@ public class DatabaseHelper extends SQLiteOpenHelper { * notification vibrate to on. */ loadVibrateSetting(db, true); if (Config.LOGD) Log.d(TAG, "Reset system vibrate setting"); upgradeVersion = 21; } Loading Loading @@ -735,39 +718,28 @@ public class DatabaseHelper extends SQLiteOpenHelper { * * @param db The database to write the values into * @param startingIndex The zero-based position at which bookmarks in this file should begin * @param subPath The relative path from ANDROID_ROOT to the file to read * @param quiet If true, do no complain if the file is missing */ private int loadBookmarks(SQLiteDatabase db, int startingIndex, String subPath, boolean quiet) { FileReader bookmarksReader; // Environment.getRootDirectory() is a fancy way of saying ANDROID_ROOT or "/system". final File favFile = new File(Environment.getRootDirectory(), subPath); try { bookmarksReader = new FileReader(favFile); } catch (FileNotFoundException e) { if (!quiet) { Log.e(TAG, "Couldn't find or open bookmarks file " + favFile); } return 0; } private int loadBookmarks(SQLiteDatabase db, int startingIndex) { Intent intent = new Intent(Intent.ACTION_MAIN, null); intent.addCategory(Intent.CATEGORY_LAUNCHER); ContentValues values = new ContentValues(); PackageManager packageManager = mContext.getPackageManager(); ActivityInfo info; int i = startingIndex; try { XmlPullParser parser = Xml.newPullParser(); parser.setInput(bookmarksReader); try { XmlResourceParser parser = mContext.getResources().getXml(R.xml.bookmarks); XmlUtils.beginDocument(parser, "bookmarks"); while (true) { XmlUtils.nextElement(parser); final int depth = parser.getDepth(); int type; while (((type = parser.next()) != XmlPullParser.END_TAG || parser.getDepth() > depth) && type != XmlPullParser.END_DOCUMENT) { if (type != XmlPullParser.START_TAG) { continue; } String name = parser.getName(); if (!"bookmark".equals(name)) { Loading @@ -777,23 +749,36 @@ public class DatabaseHelper extends SQLiteOpenHelper { String pkg = parser.getAttributeValue(null, "package"); String cls = parser.getAttributeValue(null, "class"); String shortcutStr = parser.getAttributeValue(null, "shortcut"); int shortcutValue = (int) shortcutStr.charAt(0); if (TextUtils.isEmpty(shortcutStr)) { Log.w(TAG, "Unable to get shortcut for: " + pkg + "/" + cls); } try { ActivityInfo info = null; ComponentName cn = new ComponentName(pkg, cls); try { info = packageManager.getActivityInfo(cn, 0); } catch (PackageManager.NameNotFoundException e) { String[] packages = packageManager.canonicalToCurrentPackageNames( new String[] { pkg }); cn = new ComponentName(packages[0], cls); try { info = packageManager.getActivityInfo(cn, 0); } catch (PackageManager.NameNotFoundException e1) { Log.w(TAG, "Unable to add bookmark: " + pkg + "/" + cls, e); } } if (info != null) { intent.setComponent(cn); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); values.put(Settings.Bookmarks.INTENT, intent.toURI()); values.put(Settings.Bookmarks.INTENT, intent.toUri(0)); values.put(Settings.Bookmarks.TITLE, info.loadLabel(packageManager).toString()); values.put(Settings.Bookmarks.SHORTCUT, shortcutValue); db.insert("bookmarks", null, values); i++; } catch (PackageManager.NameNotFoundException e) { Log.w(TAG, "Unable to add bookmark: " + pkg + "/" + cls, e); } } } catch (XmlPullParserException e) { Loading @@ -811,7 +796,7 @@ public class DatabaseHelper extends SQLiteOpenHelper { * @param db The database to write the values into */ private void loadBookmarks(SQLiteDatabase db) { loadBookmarks(db, 0, DEFAULT_BOOKMARKS_PATH, false); loadBookmarks(db, 0); } /** Loading Loading @@ -890,8 +875,6 @@ public class DatabaseHelper extends SQLiteOpenHelper { SQLiteStatement stmt = db.compileStatement("INSERT OR IGNORE INTO system(name,value)" + " VALUES(?,?);"); Resources r = mContext.getResources(); loadBooleanSetting(stmt, Settings.System.DIM_SCREEN, R.bool.def_dim_screen); loadSetting(stmt, Settings.System.STAY_ON_WHILE_PLUGGED_IN, Loading Loading
packages/SettingsProvider/etc/Android.mkdeleted 100644 → 0 +0 −33 Original line number Diff line number Diff line # # 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. # LOCAL_PATH := $(my-dir) ######################## include $(CLEAR_VARS) LOCAL_MODULE := bookmarks.xml LOCAL_MODULE_TAGS := user # This will install the file in /system/etc # LOCAL_MODULE_CLASS := ETC LOCAL_SRC_FILES := $(LOCAL_MODULE) include $(BUILD_PREBUILT)
packages/SettingsProvider/etc/bookmarks.xml→packages/SettingsProvider/res/xml/bookmarks.xml +2 −6 Original line number Diff line number Diff line Loading @@ -32,8 +32,8 @@ class="com.google.android.gm.ConversationListActivityGmail" shortcut="g" /> <bookmark package="com.android.providers.im" class="com.android.providers.im.LandingPage" package="com.android.im" class="com.android.im.app.LandingPage" shortcut="i" /> <bookmark package="com.android.calendar" Loading @@ -53,8 +53,4 @@ package="com.android.mms" class="com.android.mms.ui.ConversationList" shortcut="s" /> <bookmark package="com.google.android.youtube" class="com.google.android.youtube.HomeActivity" shortcut="y" /> </bookmarks>
packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java +32 −49 Original line number Diff line number Diff line Loading @@ -23,40 +23,29 @@ import android.content.Intent; import android.content.pm.ActivityInfo; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; import android.content.pm.ServiceInfo; import android.content.res.Resources; import android.content.res.XmlResourceParser; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDoneException; import android.database.sqlite.SQLiteException; import android.database.sqlite.SQLiteOpenHelper; import android.database.sqlite.SQLiteStatement; import android.media.AudioManager; import android.media.AudioService; import android.net.ConnectivityManager; import android.os.Environment; import android.os.SystemProperties; import android.provider.Settings; import android.provider.Settings.Secure; import android.speech.RecognitionService; import android.speech.RecognizerIntent; import android.text.TextUtils; import android.util.AttributeSet; import android.util.Config; import android.util.Log; import android.util.Xml; import com.android.internal.telephony.RILConstants; import com.android.internal.util.XmlUtils; import com.android.internal.widget.LockPatternUtils; import com.android.internal.widget.LockPatternView; import org.xmlpull.v1.XmlPullParser; import org.xmlpull.v1.XmlPullParserException; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.util.List; Loading @@ -65,11 +54,6 @@ import java.util.List; * Mostly just has a bit {@link #onCreate} to initialize the database. */ public class DatabaseHelper extends SQLiteOpenHelper { /** * Path to file containing default bookmarks, relative to ANDROID_ROOT. */ private static final String DEFAULT_BOOKMARKS_PATH = "etc/bookmarks.xml"; private static final String TAG = "SettingsProvider"; private static final String DATABASE_NAME = "settings.db"; Loading Loading @@ -158,7 +142,6 @@ public class DatabaseHelper extends SQLiteOpenHelper { * notification vibrate to on. */ loadVibrateSetting(db, true); if (Config.LOGD) Log.d(TAG, "Reset system vibrate setting"); upgradeVersion = 21; } Loading Loading @@ -735,39 +718,28 @@ public class DatabaseHelper extends SQLiteOpenHelper { * * @param db The database to write the values into * @param startingIndex The zero-based position at which bookmarks in this file should begin * @param subPath The relative path from ANDROID_ROOT to the file to read * @param quiet If true, do no complain if the file is missing */ private int loadBookmarks(SQLiteDatabase db, int startingIndex, String subPath, boolean quiet) { FileReader bookmarksReader; // Environment.getRootDirectory() is a fancy way of saying ANDROID_ROOT or "/system". final File favFile = new File(Environment.getRootDirectory(), subPath); try { bookmarksReader = new FileReader(favFile); } catch (FileNotFoundException e) { if (!quiet) { Log.e(TAG, "Couldn't find or open bookmarks file " + favFile); } return 0; } private int loadBookmarks(SQLiteDatabase db, int startingIndex) { Intent intent = new Intent(Intent.ACTION_MAIN, null); intent.addCategory(Intent.CATEGORY_LAUNCHER); ContentValues values = new ContentValues(); PackageManager packageManager = mContext.getPackageManager(); ActivityInfo info; int i = startingIndex; try { XmlPullParser parser = Xml.newPullParser(); parser.setInput(bookmarksReader); try { XmlResourceParser parser = mContext.getResources().getXml(R.xml.bookmarks); XmlUtils.beginDocument(parser, "bookmarks"); while (true) { XmlUtils.nextElement(parser); final int depth = parser.getDepth(); int type; while (((type = parser.next()) != XmlPullParser.END_TAG || parser.getDepth() > depth) && type != XmlPullParser.END_DOCUMENT) { if (type != XmlPullParser.START_TAG) { continue; } String name = parser.getName(); if (!"bookmark".equals(name)) { Loading @@ -777,23 +749,36 @@ public class DatabaseHelper extends SQLiteOpenHelper { String pkg = parser.getAttributeValue(null, "package"); String cls = parser.getAttributeValue(null, "class"); String shortcutStr = parser.getAttributeValue(null, "shortcut"); int shortcutValue = (int) shortcutStr.charAt(0); if (TextUtils.isEmpty(shortcutStr)) { Log.w(TAG, "Unable to get shortcut for: " + pkg + "/" + cls); } try { ActivityInfo info = null; ComponentName cn = new ComponentName(pkg, cls); try { info = packageManager.getActivityInfo(cn, 0); } catch (PackageManager.NameNotFoundException e) { String[] packages = packageManager.canonicalToCurrentPackageNames( new String[] { pkg }); cn = new ComponentName(packages[0], cls); try { info = packageManager.getActivityInfo(cn, 0); } catch (PackageManager.NameNotFoundException e1) { Log.w(TAG, "Unable to add bookmark: " + pkg + "/" + cls, e); } } if (info != null) { intent.setComponent(cn); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); values.put(Settings.Bookmarks.INTENT, intent.toURI()); values.put(Settings.Bookmarks.INTENT, intent.toUri(0)); values.put(Settings.Bookmarks.TITLE, info.loadLabel(packageManager).toString()); values.put(Settings.Bookmarks.SHORTCUT, shortcutValue); db.insert("bookmarks", null, values); i++; } catch (PackageManager.NameNotFoundException e) { Log.w(TAG, "Unable to add bookmark: " + pkg + "/" + cls, e); } } } catch (XmlPullParserException e) { Loading @@ -811,7 +796,7 @@ public class DatabaseHelper extends SQLiteOpenHelper { * @param db The database to write the values into */ private void loadBookmarks(SQLiteDatabase db) { loadBookmarks(db, 0, DEFAULT_BOOKMARKS_PATH, false); loadBookmarks(db, 0); } /** Loading Loading @@ -890,8 +875,6 @@ public class DatabaseHelper extends SQLiteOpenHelper { SQLiteStatement stmt = db.compileStatement("INSERT OR IGNORE INTO system(name,value)" + " VALUES(?,?);"); Resources r = mContext.getResources(); loadBooleanSetting(stmt, Settings.System.DIM_SCREEN, R.bool.def_dim_screen); loadSetting(stmt, Settings.System.STAY_ON_WHILE_PLUGGED_IN, Loading