初学者求教android高手:
我使用的是android 2.1系统, 在系统启动后主界面上显示:Mms, Google search, Contacts, Browser这几个应用程序快捷方式图标,但我现在想启动后将这几个应用程序换成其它的几个如(Gallery,Music,Settings),请问高手,我需要如何修改程序让系统一启动就将我指定的应用程序快捷方式显示到主界面上?
我使用的是android 2.1系统, 在系统启动后主界面上显示:Mms, Google search, Contacts, Browser这几个应用程序快捷方式图标,但我现在想启动后将这几个应用程序换成其它的几个如(Gallery,Music,Settings),请问高手,我需要如何修改程序让系统一启动就将我指定的应用程序快捷方式显示到主界面上?
解决方案 »
- 如何获取当前运行的屏幕的activity的实例对象??
- 请教关于android音乐播放器歌词显示
- android include 里面怎么 跳转 Activity
- android 问题求救
- SOS!编程高手们.急救啊~~
- 50RMB求SAX解析XML网站代码问题的解答
- R.id.widget29_getName_EditText,这里面如何定义EditText控件
- 初级问题
- AndroidManifest: Ignoring unknown 'application' XML element
- OkHttp post后返回404的问题
- 让 TextView 的滚动条 返回顶部。
- 关于GridView横向滚动的问题
2.有的模块1的方法不行,需要重新编译生成.apk ,然后把.apk加到img文件?里面。
LauncherProvider.java 这个文件,我做过,不知道别乱说
谢谢你解答!
我在Launcher里确实找到了LauncherProvider.java这个文件, 找到了如下这个函数,但还是不知怎么改?不知xml file 在哪里/**
* Loads the default set of favorite packages from an xml file.
*
* @param db The database to write the values into
*/
private int loadFavorites(SQLiteDatabase db) {
Intent intent = new Intent(Intent.ACTION_MAIN, null);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
ContentValues values = new ContentValues(); PackageManager packageManager = mContext.getPackageManager();
int i = 0;
try {
XmlResourceParser parser = mContext.getResources().getXml(R.xml.default_workspace);
AttributeSet attrs = Xml.asAttributeSet(parser);
XmlUtils.beginDocument(parser, TAG_FAVORITES); 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;
} boolean added = false;
final String name = parser.getName(); TypedArray a = mContext.obtainStyledAttributes(attrs, R.styleable.Favorite); values.clear();
values.put(LauncherSettings.Favorites.CONTAINER,
LauncherSettings.Favorites.CONTAINER_DESKTOP);
values.put(LauncherSettings.Favorites.SCREEN,
a.getString(R.styleable.Favorite_screen));
values.put(LauncherSettings.Favorites.CELLX,
a.getString(R.styleable.Favorite_x));
values.put(LauncherSettings.Favorites.CELLY,
a.getString(R.styleable.Favorite_y)); if (TAG_FAVORITE.equals(name)) {
added = addAppShortcut(db, values, a, packageManager, intent);
} else if (TAG_SEARCH.equals(name)) {
added = addSearchWidget(db, values);
} else if (TAG_CLOCK.equals(name)) {
added = addClockWidget(db, values);
} else if (TAG_SHORTCUT.equals(name)) {
added = addShortcut(db, values, a);
} if (added) i++; a.recycle();
}
} catch (XmlPullParserException e) {
Log.w(LOG_TAG, "Got exception parsing favorites.", e);
} catch (IOException e) {
Log.w(LOG_TAG, "Got exception parsing favorites.", e);
} return i;
}
<favorites xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher"> <search
launcher:screen="1"
launcher:x="0"
launcher:y="0" /> <favorite
launcher:packageName="com.android.contacts"
launcher:className="com.android.contacts.DialtactsActivity"
launcher:screen="1"
launcher:x="0"
launcher:y="3" /> <favorite
launcher:packageName="com.android.contacts"
launcher:className="com.android.contacts.DialtactsContactsEntryActivity"
launcher:screen="1"
launcher:x="1"
launcher:y="3" /> <favorite
launcher:packageName="com.android.browser"
launcher:className="com.android.browser.BrowserActivity"
launcher:screen="1"
launcher:x="2"
launcher:y="3" /> <favorite
launcher:packageName="com.google.android.apps.maps"
launcher:className="com.google.android.maps.MapsActivity"
launcher:screen="1"
launcher:x="3"
launcher:y="3" /> <favorite
launcher:packageName="com.android.mms"
launcher:className="com.android.mms.ui.ConversationList"
launcher:screen="1"
launcher:x="0"
launcher:y="2" /> <favorite
launcher:packageName="com.android.vending"
launcher:className="com.android.vending.AssetBrowserActivity"
launcher:screen="1"
launcher:x="3"
launcher:y="2" /></favorites>去掉就可以了,但是当我想添加自已的应用程序时launcher:className=" "这个里面不知如何添加了,哪位大侠指点一下?
我一直怀疑是launcher:className=" " 里面的内容添加不正确.
还是未解决!
我照着各位大虾的说法修改了default_workspace.xml,并将新的Launcher.apk push到Android2.1的模拟器上(/system/app/...),可HomeScreen还是一点变化都没有啊! 是不是还要修改launcher的数据库? 怎么修改?
要吧launcher的数据文件都删除掉,再重新启动。。 数据文件在data\data 那个目录下面
没错,但有人遇到这种现象没:search一旦改变位置,他就不显示了,这是怎么回事?
这个文件在哪?我米看到哇,请求高手指点!