有一个app, 然后有一个widget 与之对应被加到桌面上了(也可能在桌面上放置了好几个),然后卸载这个app,怎么样处理才能让这个桌面widget 自动删除,而不需要用户手的删除呢?
谢谢。

解决方案 »

  1.   

    大家都没有做过桌面widget吗?
      

  2.   

    luncher有个provider是负责增删桌面快捷方式的,不知道widget里面的数据是不是也是存在哪个数据库中呢
      

  3.   

    Launcher中并没有提供这类机制来处理应用程序卸载时,删除其AppWidget。 你可以这么做:   在你的应用程序卸载时,接受该广播,手动获取与该AppWidget ids ,在调用AppWidgetManager删除。
     可参考SDK怎么去处理 。
      

  4.   

            主动删除快捷方式到实现了这么个广播机制。
            应该是接受不到的,只能在Launcher里去实现这类广播接受了,并且去删除你的AppWidgetProvider的AppWidget , 不过实现起来,不难,但是有点别扭 。
      

  5.   

    关键Launcher不是我们自己实现的,所以也无法修改。
      

  6.   

       那没办法了呗。你只能舒服自己主流的Launcher有没有这么这么个功能 , 没有的话,你自己的应用就不加了吧。反正管理AppWidget也是Launcher的事情。
      

  7.   


    获取appwidgetid之后,调用什么方法能够删除啊