我正在尝试将 PebbleKit JS 模拟器设置为能够在没有 Pebble-Watch 本身的情况下完全开发。我按照他们的github repo上的说明安装了模拟器,但是当按照他们的 github 上的指示运行模拟器时,我遇到了错误,我不知道为什么。我重新安装了几次,错误仍然存在。(我安装了 QEMU-Emulator 并且工作正常)
似乎 JS-Simulator 无法连接到 QEMU-Emulator。这是我在没有打开 QEMU 的情况下运行 ./phonesim.py 时的终端输出:
Namespace(debug=False, layout=None, oauth=None, pbws=[], persist=None, port=9000, qemu='127.0.0.1:12344', ssl_root=None, token=None)
['127.0.0.1', '12344']
INFO:pypkjs:Ready. Loaded apps:
Traceback (most recent call last):
File "./phonesim.py", line 31, in <module>
runner.run()
File "/Users/manuelburger/pypkjs/runner/websocket.py", line 56, in run
pebble_greenlet = self.pebble.connect()
File "/Users/manuelburger/pypkjs/pebble_manager.py", line 29, in connect
self.pebble.connect()
File "/Library/Python/2.7/site-packages/libpebble2/communication/__init__.py", line 56, in connect
self.transport.connect()
File "/Library/Python/2.7/site-packages/libpebble2/communication/transports/qemu/__init__.py", line 53, in connect
raise ConnectionError(str(e))
libpebble2.exceptions.ConnectionError: [Errno 61] Connection refused
这是在 QEMU 运行 watchface1.pbw 时运行 ./jskit.py localhost:12344 watchface1.pbw 时的输出:
['localhost', '12344']
Traceback (most recent call last):
File "./jskit.py", line 28, in <module>
runner = TerminalRunner(sys.argv[1], sys.argv[2:], "data")
File "/Users/manuelburger/pypkjs/runner/terminal.py", line 15, in __init__
super(TerminalRunner, self).__init__(*args, **kwargs)
File "/Users/manuelburger/pypkjs/runner/__init__.py", line 37, in __init__
self.timeline = PebbleTimeline(self, persist=persist_dir, oauth=oauth_token, layout_file=layout_file)
File "/Users/manuelburger/pypkjs/timeline/__init__.py", line 33, in __init__
model.prepare_db(self.persist_dir + '/timeline.db')
File "/Users/manuelburger/pypkjs/timeline/model.py", line 312, in prepare_db
db.connect()
File "/Library/Python/2.7/site-packages/peewee.py", line 2811, in connect
self.__local.closed = False
File "/Library/Python/2.7/site-packages/peewee.py", line 2732, in __exit__
reraise(new_type, new_type(*exc_value.args), traceback)
File "/Library/Python/2.7/site-packages/peewee.py", line 2810, in connect
**self.connect_kwargs)
File "/Library/Python/2.7/site-packages/peewee.py", line 3016, in _connect
conn = sqlite3.connect(database, **kwargs)
peewee.OperationalError: unable to open database file
非常感谢解决此问题的任何帮助和建议。