到目前为止,我已经成功使用pgs4a 0.9.4在Android上运行简单的PyGame应用程序。我的下一个实验是看看我是否可以在PGU中使用PyGame GUI小部件;不幸的是,这似乎没有用,尽管有一些论坛帖子表明应该这样做。有人有这个成功吗?
我仍然在摸索中学习如何捕获和记录错误信息,所以以下是我尝试演示问题的最小示例。这个应用程序只显示一个带有错误信息的黑屏,如果有的话,用白色文字。
请注意,只需导入PGU模块即可解决问题。也就是说,如果我注释掉“from pgu import gui”,那么事情就可以了。令人讨厌的部分是异常似乎没有得到干净利落 - 应用程序只是在启动后立即退出 - 所以我不确定PGU导入问题所在。
import pygame
msg = 'OK'
try:
from pgu import gui # pass works without error
except Exception as e:
msg = str(e)
try:
import android
except ImportError:
android = None
FPS = 30
WIDTH, HEIGHT = 480, 800
def main():
pygame.init()
screen = pygame.display.set_mode((WIDTH, HEIGHT))
if android:
android.init()
android.map_key(android.KEYCODE_BACK, pygame.K_ESCAPE)
font = pygame.font.Font(None, 24)
surf = font.render(msg, True, (255, 255, 255))
pygame.time.set_timer(pygame.USEREVENT, 1000 / FPS)
while True:
ev = pygame.event.wait()
if android:
if android.check_pause():
android.wait_for_resume()
if ev.type == pygame.USEREVENT:
screen.fill((0, 0, 0, 255))
screen.blit(surf, (10, 400))
pygame.display.flip()
elif ev.type == pygame.QUIT or (ev.type == pygame.KEYDOWN and
ev.key == pygame.K_ESCAPE):
break
pygame.quit()
if __name__ == "__main__":
main()
答案 0 :(得分:2)
最近看过这个,但还没试过。您似乎需要将要导入的其他模块复制到app目录中。 http://possiblywrong.wordpress.com/2012/06/16/python-on-android/