`
vyphn
  • 浏览: 98234 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

在桌面上默认添加Widget

阅读更多
private boolean addWeatherWidget(SQLiteDatabase db, ContentValues values,TypedArray a) {  
              
            String packageName = a.getString(R.styleable.Favorite_packageName);  
            String className = a.getString(R.styleable.Favorite_className);  
            if(packageName == null || className == null){  
                return false;  
            }  
              
            final int[] bindSources = new int[] {  
                    Favorites.ITEM_TYPE_WIDGET_WEATHER,  
            };  
  
            final ArrayList<ComponentName> bindTargets = new ArrayList<ComponentName>();  
            bindTargets.add(new ComponentName(packageName,  className));  
  
            boolean allocatedAppWidgets = false;  
  
            // Try binding to an analog clock widget  
            try {  
                int appWidgetId = mAppWidgetHost.allocateAppWidgetId();  
  
                values.put(Favorites.ITEM_TYPE, Favorites.ITEM_TYPE_WIDGET_WEATHER);  
                values.put(Favorites.SPANX,a.getString(R.styleable.Favorite_spanX));  
                values.put(Favorites.SPANY, a.getString(R.styleable.Favorite_spanY));  
                values.put(Favorites.APPWIDGET_ID, appWidgetId);  
                db.insert(TABLE_FAVORITES, null, values);  
  
                allocatedAppWidgets = true;  
                Log.i(LOG_TAG, "addWeatherWidget -- allocatedAppWidgets = "+allocatedAppWidgets);  
            } catch (RuntimeException ex) {  
                Log.e(LOG_TAG, "Problem allocating appWidgetId", ex);  
            }  
            // If any appWidgetIds allocated, then launch over to binder  
            if (allocatedAppWidgets) {  
                launchAppWidgetBinder(bindSources, bindTargets);  
            }  
  
            return allocatedAppWidgets;  
        }   

<weather
         launcher:packageName="com.moji.mjweather"
         launcher:className="com.moji.mjweather.CMojiWidget4x2"
         launcher:screen="3"
         launcher:x="0"
         launcher:y="1" 
         launcher:spanX="4"
         launcher:spanY="2"/> 

<widget  
launcher:packageName="..."       //widget的packageName  
launcher:className=" ..."       //实现 widget的 receiver 类的名称.  
    launcher:container="..."        //放置的位置(只能为desktop)  
        launcher:screen="..."        //放置在第几屏上  
        launcher:x="..."              //放置的x位置  
        launcher:y="..."              //放置的y位置  
        launcher:spanx="..."         //在x方向上所占格数  
        launcher:spany="..."/>       //在y方向上所占格数
分享到:
评论

相关推荐

    AppWidget学习demo

    AppWidget是Android系统提供的一种可以在桌面展示的小部件,它允许用户在主屏幕上放置应用程序的快捷方式或者小型交互式UI,无需打开应用即可进行一些简单的操作。这个"AppWidget学习demo"是一个实例,帮助开发者...

    android桌面添加默认书签

    可以将自己喜欢的app或者widget插件放置在android桌面,添加自己想要的书签,实现快速进入。

    widget搭建开发环境

    Mobile Widget是一种可以在手机桌面上显示动态信息的小工具,具有体积小、功能灵活的特点,能够为用户提供便捷的信息获取途径。 #### 开发环境准备 为了构建一个适用于OPhone平台的Widget开发环境,我们需要完成...

    <桌面widget详解(一)——基本demo构建>对应源码

    最后,将应用打包发布到设备或模拟器上,用户就可以在主屏幕上添加并使用我们创建的桌面小部件了。测试时,注意检查小部件在不同尺寸屏幕上的表现,以及各种交互情况下的正确性。 以上就是构建一个基本Android桌面...

    Widget2Home

    【Widget2Home】是一款专为Android平台设计的应用程序,它允许用户轻松地将小部件(Widget)添加到自己的主屏幕上,以实现个性化和便捷的操作。在Android系统中,小部件是一种可以直接在桌面显示并交互的功能组件,...

    WidgetTest实例

    在Android平台上,WidgetTest是一个典型的桌面小部件(Widget)的示例应用,它展示了如何创建、配置和在用户的主屏幕上实现一个互动的Android小部件。让我们深入探讨一下这个实例涉及的关键知识点。 首先,理解...

    AppWidget

    AppWidget是Android系统提供的一种组件,它允许开发者在用户的主屏幕上创建自定义的小部件,无需用户启动应用程序。这种功能极大地增强了用户体验,使用户能够快速访问或控制应用的功能,而无需打开应用本身。本文将...

    AppWidget_DEMO

    5. **Widget配置Activity**: 可选地,你可以为App Widget提供一个配置Activity,让用户在添加Widget时进行个性化设置。 6. **更新机制**: 使用`AppWidgetManager`的`updateAppWidget()`方法定期或根据需要更新...

    appwidget时间每秒刷新一次

    在Android平台上,AppWidget是小部件的简称,它允许开发者创建可以放置在用户主屏幕上的小型应用程序。在本例中,我们关注的是一个特定类型的AppWidget,它显示时间并每秒更新一次。创建这样一个实时更新的时钟App...

    widget实例

    6. **添加Widget到应用**: 用户可以通过长按主屏幕,选择添加Widget,然后在列表中找到你的应用来添加Widget。在应用内部,你可以提供一个引导用户添加Widget的入口,比如一个Button,点击后调用`Intent`来启动`...

    《桌面widget详解(四)——桌面音乐播放器(实战)》源码

    在Android平台上,开发一款桌面音乐播放器Widget是一个有趣且实用的实践项目。本文将深入解析如何利用Android的App Widget API创建一个能够在用户桌面运行并控制音乐播放的应用组件。通过源码分析,我们可以学习到...

    07 Widget开发1

    Android Widget是Android系统提供的一种特性,允许开发者将小型应用程序视图集成到用户的Home screen(桌面主屏)上,为用户提供便捷的信息查看和交互功能。Widget并非独立运行在一个进程中,而是依附于宿主进程,...

    android widget入门教程

    Android小部件(Widgets)是Android操作系统提供的一种特性,允许开发者在用户的主屏幕上创建交互式的UI元素,用户无需打开应用程序即可获取信息或执行简单的操作。这篇教程将带你深入了解Android小部件的开发过程,...

    关于android AppWidget初探①

    Android AppWidget是Android系统提供的一种桌面小部件功能,它允许开发者创建可以被用户直接放置在主屏幕上的小型应用程序,提供快捷的功能或者展示实时信息。在本文中,我们将深入探讨AppWidget的基本概念、工作...

    安卓Android源码——Widget小组件开发.zip

    1. ActionButtons:在Android 4.2及以上版本,Widget支持添加自定义操作按钮,通过AppWidgetProviderInfo的addAction()方法设置。 2. IntentService:处理Widget请求时,推荐使用IntentService,避免阻塞主线程,...

    Android高级应用源码-Android小部件AppWidget.zip

    在Android平台上,AppWidget是应用程序可以提供的一种桌面小部件,让用户在主屏幕上获得快速的交互体验,无需打开完整的应用程序。这个“Android高级应用源码-Android小部件AppWidget.zip”包含了一个关于如何创建和...

    Android Appwidget

    Android AppWidget是Android操作系统提供的一种服务,允许开发者创建可以在用户主屏幕上显示的小应用程序,通常称为桌面小工具。这些小工具不需用户启动,可以实时显示信息,为用户提供快速访问应用功能或查看信息的...

    Android -- AppWidget的开....zip

    在Android系统中,AppWidget是桌面小部件的实现方式,它允许开发者将应用程序的功能和信息直接集成到用户的主屏幕上,用户无需打开应用就能与之交互。AppWidget虽然看似简单,但其实涉及到了许多核心的Android组件和...

    安卓Android源码——安卓Android小部件AppWidget.rar

    在安卓平台上,AppWidget是Android系统提供的一种轻量级组件,允许开发者在用户的主屏幕上创建交互式的迷你应用程序,也就是我们通常所说的桌面小部件。这个压缩包"安卓Android源码——安卓Android小部件AppWidget....

    QT4 widget程序

    在这个图像浏览器中,主要用到的Widget可能是QLabel,因为QLabel可以显示图像,并且可以利用其方法来实现图片的缩放功能。 QLabel控件默认不支持直接缩放图片,但可以通过设置其QPixmap对象的大小或者使用QGraphics...

Global site tag (gtag.js) - Google Analytics