Kivy:在 iOS 上使用 JSON 文件获取高分时出错

2024-03-31

我尝试使用 JSON 文件和 Kivy 中的 json 存储语言为应用程序设置高分跟踪器。

我导入了 JSONstore,并在我的主游戏类中导入了 JSONstore

class Game(FloatLayout):
    highscorejson = JsonStore('highscore.json')
    highscore = NumericProperty(highscorejson.get('highscore')['best'])

在我启动课程后,我有一个结束游戏功能,可以结束游戏并检查新分数是否超过旧的高分。

def end_game(self):
    if self.score > self.highscore:
         self.highscorejson.put('highscore', best = self.score)
    self.highscore = self.highscorejson.get('highscore')['best']

当我通过 Kivy 运行它时,它运行得很好,但是当我使用我的 iphone 作为测试设备通过 XCode 运行它时,当你得分高于高分并且游戏结束时,它会崩溃。错误信息如下。

  File "/usr/local/lib/python2.7/site-packages/kivy/storage/__init__.py", line 174, in put
   File "/usr/local/lib/python2.7/site-packages/kivy/storage/jsonstore.py", line 39, in     store_sync
 IOError: [Errno 1] Operation not permitted: 'highscore.json'
2014-06-24 21:59:34.385 cookie[2320:60b] Application quit abnormally!
2014-06-24 21:59:34.457 cookie[2320:60b] Leaving

完整错误:http://pastebin.com/Zy0DtysW http://pastebin.com/Zy0DtysW


我也被这个问题困扰了。所以,最后,我能够解决这个问题。接下来的代码对我帮助很大。

from os.path import join

class MyApp(App):
def build(self):
    data_dir = getattr(self, 'user_data_dir')
    store = JsonStore(join(data_dir, 'storage_file.json'))

我认为,user_data_dir为每个应用程序和操作系统存储一个唯一的路径,其中存储当前应用程序的代码。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Kivy:在 iOS 上使用 JSON 文件获取高分时出错 的相关文章

随机推荐

  • 从一开始就构建 IDocument 最有效的方法是什么

    我想使用以下类作为具体示例逐步构建一个新的 IDocument 对象 您可以从您喜欢的任何对象开始 并使用您喜欢的任何中间对象 只要生成的对象是一个代表完整类的 IDocument 步骤 1 添加一个名为 MyNamespace 的新命名空
  • iOS 照片库读取权限

    在用户允许我们访问他的相机胶卷后 我们希望获取数据并将其从应用程序内部上传到我们的服务 有没有办法从文件中访问视频数据 打开视频文件的唯一方法是创建 AVAsset 但这对我来说还不够 我知道关闭 func requestExportSes
  • Visual Studio 2015 JSX/ES2015 语法突出显示

    如何使用 ES2015 代码在 Visual Studio 2015 for JSX 中获得正确的语法突出显示 It works fine if I remove the import and export keywords 我刚刚更新到
  • 强制关闭应用程序

    我是 Android 新手 遇到了一个问题 我想知道如何以编程方式强制关闭应用程序并再次重新启动它 我正在尝试这个 因为我真的很坚持OutOfMemmoryError我想释放内存并再次重新启动应用程序 如果我错了 请指导我 要强制关闭应用程
  • php打开修改并保存html文件

    在php中我想打开一个html文件 删除div 类区域 的内容并保存它 dom new DOMDocument dom gt loadHTMLFile temp page y xhtml xpath new DOMXPath dom pDi
  • Nodejs 与 C++ 程序通信?

    假设我有一个 C 程序与 Linux 服务器上的 Node js Web 应用程序在同一台服务器上运行 C 程序维护一个队列 而我想要使用 Node js 做的是将一些数据推送到队列中 最好的方法是什么 哪个更好 套接字还是IPC 如果你使
  • 是否可以在重新加载后立即执行函数...?

    我有一组代码 setTimeout function window location reload true if scope attribute parentAttribute id angular element document ge
  • BitmapFactory.decodeFile() 在某些设备中返回 null

    我正在使用以下代码here http voidcanvas com whatsapp like image compression in android 我想压缩图像 BitmapFactory Options options new Bi
  • Cassandra 中的二级索引和倒排索引有什么区别?

    当我读到这两篇文章时 我认为他们都在解释相同的方法 我用谷歌搜索但什么也没找到 执行上有区别吗 Cassandra本身有二级索引 但倒排索引必须自己实现 顺便问一下 哪个搜索速度更快 主要区别在于 Cassandra 中的二级索引的分布方式
  • 如何删除树枝中的空格

    我需要的 我需要从 html 中删除空格 我需要喜欢 data 额外的空格被删除 删除 html 元素之间的额外空格 sypmfony 还支持什么 code spaceless code endspaceless Debug http tw
  • 删除 VSMacros80 目录

    有什么方法可以阻止 Visual Studio 在我的默认项目目录中创建 VSMacros80 文件夹吗 我自己刚刚发现 如果你在后面添加一个反斜杠项目文件夹设置例如改变它从C dev to C dev the VSMacros80将不再创
  • 使用 PlayFramework 在 YAML 文件中映射 BigInteger

    给出以下模型示例 Entity Table name tierenforcers public class TierEnforcer extends Model public BigInteger maxStorage expressed
  • 删除 matplotlib 图例中的重复标签[重复]

    这个问题在这里已经有答案了 如果您使用 matplotlib 绘制多条线或点 有时您可能会发现出现重复标签的情况 例如 for i in range 5 Y1 boatarrays i Y2 cararrays i ax plot X Y1
  • 如何从可反应的单元格渲染器按钮中使用observeEvent触发模态框?

    继从this https stackoverflow com questions 68573006 creating shiny outputs from custom html inputs 68573232 68573232帖子 我想知
  • Java泛型接口实现

    我有一个界面如下 public interface MethodExecutor
  • 如何从 RDL 文件中的语义查询中获取物理 SQL 查询?

    如何从 RDL 文件中的语义查询中获取物理 SQL 查询 从 RDL 中提取语义查询时 我们需要执行以下一些步骤 从 RDL 文件中提取语义查询 根据语义模型 XSD 进行验证 将语义查询解析并转换为我们能够生成物理 SQL 的结构 执行转
  • 为什么 n 会抛出错误?错误:需要 sudo (或更改所有权,或定义 N_PREFIX)

    我想安装最新的 Node js 版本 n latest installing node v14 2 0 mkdir usr local n versions node 14 2 0 mkdir cannot create directory
  • 在 monolog 中设置 json 格式化程序

    日志如何设置为json格式 in monolog logger new StreamHandler DIR my app log logger gt setFormatter new JsonFormatter logger gt push
  • 寻找提供 django 模板的资源[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我对 django 和 python 非常熟悉 但我对网页设计的 视觉 方面很糟糕 即使经过相当多的谷
  • Kivy:在 iOS 上使用 JSON 文件获取高分时出错

    我尝试使用 JSON 文件和 Kivy 中的 json 存储语言为应用程序设置高分跟踪器 我导入了 JSONstore 并在我的主游戏类中导入了 JSONstore class Game FloatLayout highscorejson