【问题标题】:Android;Force AppWidget to work from SD Card?Android;强制 AppWidget 从 SD 卡工作?
【发布时间】:2013-08-23 08:51:57
【问题描述】:

有什么方法可以强制 AppWidget 工作,即使 App 被移动到 SD 卡并且 SD 卡不是 unmountedDocs说:

...如果应用程序使用以下任何功能,则不应允许将应用程序安装在外部存储上,因为引用的后果是卸载外部存储时:
...
应用小部件
您的 App Widget 将从家中移除 屏幕。重新安装外部存储时,您的 App Widget 将不会 可供用户选择,直到系统重置主页 应用程序(通常直到系统重新启动)。

似乎文档说 AppWidget 将从主屏幕中删除 if 用户卸载 SD 卡。但是当我将模拟器中的应用程序移动到 SD 卡(并且我没有卸载 SD 卡)时,请参阅 problem loading widget 中的消息主屏幕,小部件列表中的用户也无法使用小部件。为什么?

【问题讨论】:

  • 主要是因为目前没有办法在 sdcard 中运行小部件(运行后台进程),因为 SD 卡总是被“要求”工作。我的意思是你不能从安装在 SD 卡上的应用程序运行服务。如果你深入观察,你会发现几乎每个有后台进程的应用程序都只能安装在内部存储中。希望对您有所帮助。
  • @user2606414 我之前开发了一些应用程序,他们有服务并且他们的服务可以在应用程序移动到 SD 卡的情况下工作。
  • 你确定他们在后台工作?
  • @user2606414 是的,当然。我确定。
  • Raùl 刚刚解释了我的意思...我几乎可以肯定您无法从 SD 卡运行小部件...

标签: android android-sdcard android-appwidget


【解决方案1】:

目前,当应用程序安装在 SD 卡上时,无法使小部件工作。即使安装了 SD 卡,这也是正常行为。

您收到错误problem loading widget,因为当您将应用程序移动到外部存储时,小部件会自动禁用(并从小部件列表中删除,因此您无法添加它们),但它们保留在主屏幕中,以便当您将其移回手机并重置家庭应用程序时准备就绪。

如果您要支持用户将您的应用移动到外部存储,也许您可​​以发布另一个应用以仅保存您的小部件,并将其配置为只能安装在手机中。这解决了问题,但用户必须下载两个应用程序而不是一个。

【讨论】:

  • @Raúl Juárez 感谢您的回复。我的部分问题是关于为什么小部件行为与文档中讨论的内容相反。您有什么想法吗?
  • @hasanghaforian 我不知道为什么行为与文档中所述的不同,或者为什么文档没有清楚地提到即使安装了卡也禁用小部件的原因,我相信他们避免在 SD 卡中显示应用程序的小部件,以防止意外移除卡时出现问题(应用程序中断、Android 失去稳定性、性能)。
  • @RaúlJuárez 谢谢。看来这是唯一可行的方法,所以我奖励赏金。但它没有解释文档和应用程序中发生的情况之间的区别。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-07
  • 2011-08-06
  • 1970-01-01
  • 2012-01-16
  • 2012-04-30
  • 1970-01-01
相关资源
最近更新 更多