给AppWidget注册了点击事件并每分钟刷新一次AppWidget,点击启动一个Activity,但是程序运行几天后,AppWidget点击就不响应事件了,另外添加一个新的AppWidget就能响应点击事件,不知道是怎么回事,请教高手帮忙解决,网上查了一些资源说是RemoteViews内存溢出,具体的不知道该怎么做

解决方案 »

  1.   

    资源我都有释放啊,使用AppWidget是不是有哪些地方需要注意的地方,一分钟刷新一次频率算快吗?
      

  2.   

    RemoteViews的set系列函数在其内部会转换成Action对象存放在在ArrayList<Action>中
    而在RemoteViews中没有对这个ArrayList<Action>进行清理的操作。
    你一分钟一次的更新频率,是不是把updateAppWidget()操作放在了Service里面,并且每次重复使用这个RemoteViews对象了?
      

  3.   

    我是在Service里发广播给AppWidget更新,每次都是new RemoteViews
      

  4.   

    new出来的RemoteViews使用后销毁了?
      

  5.   

    用完之后置为null,试试看会不会溢出了.
      

  6.   

    貌似还不行,昨天晚上AppWidget又不响应点击事件了
      

  7.   

    我也出现了相同的问题,但仅仅是点击无响应,其他的一些状态信息还是有反应的。也就是说OnReceiver函数还在工作。不知道问题出在哪里。
      

  8.   

    你的sdk版本是多少的?是在模拟器上跑你的程序吗?
    如果是,换个版本高点的SDK试试;