我想在我的应用程序中实现一项功能,以便在应用未启动且手机处于唤醒状态时每10-20秒显示一条自定义消息...
我正在分享你的应用程序中的屏幕截图和推荐应用程序,我想在我的应用程序中使用相同的功能。
应用名称穆斯林的Auto-Athkar
答案 0 :(得分:0)
Android toast可以在while循环中工作吗? 当推送最小化应用程序时,您必须注册,这通常由
完成public void onPause () {
}
您必须在Application类中启动服务才能不断运行它。即使用户强制关闭,它也应该运行。 创建自己的服务类:
public class Servicey extends Service {
@Nullable
@Override
public IBinder onBind(Intent intent) {
return null;
}
@Override
public int begin(Intent intent, int flags, int beginId) {
// do that shiny stuff with toasts
return super.begin(intent, flags, beginId);
}
然后在您活动的onCreate()
startService(new Intent(this, Servicey.class));
答案 1 :(得分:-1)
这是发送消息的示例代码。
new Thread(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
while (true) {
try {
Thread.sleep(10000);
mHandler.post(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
// Write your code for message
sendSMSMessage();
}
});
} catch (Exception e) {
// TODO: handle exception
}
}
}
}).start();
protected void sendSMSMessage() {
phoneNo = txtphoneNo.getText().toString();
message = txtMessage.getText().toString();
if (ContextCompat.checkSelfPermission(this,
Manifest.permission.SEND_SMS)
!= PackageManager.PERMISSION_GRANTED) {
if (ActivityCompat.shouldShowRequestPermissionRationale(this,
Manifest.permission.SEND_SMS)) {
} else {
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.SEND_SMS},
MY_PERMISSIONS_REQUEST_SEND_SMS);
}
}
}
@Override
public void onRequestPermissionsResult(int requestCode,String permissions[], int[] grantResults) {
switch (requestCode) {
case MY_PERMISSIONS_REQUEST_SEND_SMS: {
if (grantResults.length > 0
&& grantResults[0] == PackageManager.PERMISSION_GRANTED) {
SmsManager smsManager = SmsManager.getDefault();
smsManager.sendTextMessage(phoneNo, null, message, null, null);
Toast.makeText(getApplicationContext(), "SMS sent.",
Toast.LENGTH_LONG).show();
} else {
Toast.makeText(getApplicationContext(),
"SMS faild, please try again.", Toast.LENGTH_LONG).show();
return;
}
}
}
}
希望这会对你有所帮助。