如果连续运行SL4A会遇到什么样的问题?

时间:2013-10-17 17:08:11

标签: android python sl4a

我有一个小脚本,用作广播接收器,我用Python编程(脚本处理到另一个主要的Python程序)。我不懂Java。然而,为了让接收器正常工作,SL4A自然需要继续运行。据我所见:

  • SL4A不持有唤醒锁(无论如何都不需要广播接收脚本);除非我使用wakeLockAcquirePartial(或我需要的任何一个唤醒锁)API调用显式获取它,否则GSAM Battery Monitor不指示唤醒锁。因此,它不应该过多地耗尽电池。
  • 虽然它被描述为“alpha质量”软件,但在a discussion in 2012中,人们认为SL4A对于游戏商店来说足够稳定,并且这个选项仅被拒绝,因为给出了一个应用程序可能存在安全问题这么多的权限。
  • 我看过SL4A崩溃,但这似乎通常是有问题的脚本的结果(例如没有正确释放唤醒锁)。

鉴于此,有可能出现任何问题吗?我应该注意,有问题的手机不会用于电话等。

2 个答案:

答案 0 :(得分:2)

我在日常使用中运行了一个超过3个线程的应用程序,没有任何问题。但我使用该方法将脚本转换为独立的APK。可以在SL4A FAQ

中找到此方法

答案 1 :(得分:0)

我现在已经使用这个系统超过两个月,只是想分享我的经验,以防它可能对其他人有用。

使用SL4A运行广播接收器脚本效果很好 - 但只有大约两到两天半。然后SL4A莫名其妙地似乎停止了(没有异常被抛出,至少在我的脚本中)。我连续三天没有成功运行SL4A。我应该提一下,这款手机是三星Galaxy Star。

我设法建立了一个系统,通过让我的脚本获取套接字using a slightly modified version of the code given in this answer并在运行时保留它来自动恢复此类情况。每隔十分钟,TaskBomb会启动另一个脚本,并尝试抓取同一个套接字。如果成功,则使用launching code given here重新启动原始脚本。