在使用SL4A在Android上发送短信后如何直接删除短信?

时间:2015-08-12 23:10:44

标签: android python sms sl4a qpython3

我有一家小公司,我想制作一个相当简单的python3程序,它将使用SL4A在Qpython3上的手机上运行。它的目的是通过个人电话向我的客户发送群组短信,其中包含我的个人电话中的优惠(我的电话号码存储在列表中),因为我有无限的短信。

我设法创建了一个发送文本的程序(下面的相关片段),但问题是我现在已经在列表中收集了不少数字。发送文本时,会在我的消息中为每个客户创建一个新线程,因此每次发送组短信时我都会创建大约550个线程,我最终会手动删除它们,这对于到达我的个人短信线程非常烦人

我想要求的是帮助创建一个短代码片段,脚本发送的短信将在发送后立即被删除,因此总体而言,在发送所有短信之后,没有与这些相关的线程会出现在我的消息应用程序(默认三星galaxy s4应用程序)。此外,有没有办法发送邮件,以便只有在前一个邮件被确认为已发送(而不是在发送过程中)时才会发送下一条邮件,因为要阻止我的手机冻结,我目前只使用time.sleep?

import androidhelper, time
droid=androidhelper.Android()

#loads of irrelevant code here
#example values of variables numbers and message below
numbers=["0000000001","000000000002","000000000000003"]
message="This is a sample message."

for number in numbers:
    droid.smsSend(number,message)
    #The code below is here so that the texts don't fail to send as they did before I added this in. Hopefully, you could help me to replace it with something to wait for the previous sms to be confirmed as sent.
    time.sleep(3)

请帮我解决这个问题。我会很感激。提前感谢任何回复的人。

2 个答案:

答案 0 :(得分:1)

尝试:

import sl4a, time
droid=sl4a.Android()

以及国际格式的数字:['+ 7989xxxxxxx','+ 7961xxxxxxx'] 这在qpython 3中对我有用

答案 1 :(得分:1)

我使用此代码没有问题:

进口

import androidhelper, time
import sl4a

设置sl4a

droid = sl4a.Android()

在此处输入一条提示消息,该消息将创建一个空输入以输入消息

message = droid.dialogGetInput('This text will prompt for the message you want to send').result

将您键入的内容转换为StringVariable

message = str(message)


numbers = ('phone number one', 'phone number two', 'phone number ETC')
for number in numbers:
     droid.smsSend(number, message)
     time.sleep(3)

if __name__ == '__main__':
     droid = sl4a.Android()