【问题标题】:How can a notification widget get app's setting?通知小部件如何获取应用程序的设置?
【发布时间】:2012-09-27 06:20:25
【问题描述】:

我正在尝试编写一个天气通知中心小部件,它的工作方式类似于系统的雅虎天气小部件:点击小部件,打开我自己的天气应用程序,选择一个城市,小部件会显示我选择的城市的天气。 但我不知道widget如何获取天气应用程序的城市设置。我使用*notification_center_widget*.nic来构建我的widget,这使它看起来像一个独立的应用程序在公告板上运行(我说的对吗?)。现在天气应用程序和小部件都使用存档来保存城市设置。

系统的天气小部件如何做到这一点?

天气应用程序可以直接在天气小部件的包中写入文件吗?还是天气小部件直接在天气应用中读取文件?

我还尝试使用 openURL 将选定的城市名称传递给小部件:将 URL 方案添加到 Resources 文件夹中的 Info.plist,并遵循 UIApplicationDelegate 协议,实现 handleOpenURL 功能。但它不起作用。

我尝试使用 presentModalViewController: 弹出一个 citySelectViewController 而不是在另一个应用程序中设置城市,但是 viewcontroller 只显示在小部件呈现的小区域中。

提前致谢。

【问题讨论】:

    标签: ios widget communication jailbreak notificationcenter


    【解决方案1】:

    我发现在另一个应用程序中设置小部件的城市有点像作弊。我制作了小部件以将城市设置数据存档在捆绑包的根文件夹中(可以通过 iFile 看到)。由于小部件捆绑包将安装到特定文件夹中。当用户选择城市后,天气应用可以使用 bundleWithPath 轻松获取小部件的捆绑包和捆绑包中的存档城市设置。然后,当小部件再次运行时,它将读取已被天气应用更改的城市设置数据,并显示我们选择的城市的天气。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多