0

我不确定这个问题是否适合我是 Android 新手。我正在考虑解决一个问题,即当我开车时,我希望我的 Android 自动发送或自动回复任何传入的短信。如果您能指导我或提供一些关于此的教程或代码,将不胜感激。这个任务可以在Android中完成吗?谢谢。

4

5 回答 5

1

您可以使用Google Cloud Messaging (GCM) 服务,每次收到传入消息时都会从服务器获得回复。每次您通过广播事件从 GCM 服务器收到回复时,您都可以发送自动回复。

于 2012-10-12T10:30:04.210 回答
0

您可以使用它来发送消息,但首先您需要在 android 清单文件中设置权限

 SmsManager smsManager = SmsManager.getDefault();
                smsManager.sendTextMessage(phoneNumber, null,, smsText, null, null);

有关传入消息或呼叫,请参阅本教程:Android BroadcastReceiver 教程

于 2012-10-12T10:30:49.477 回答
0
sendButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
                    int hasSMSPermission = checkSelfPermission(SEND_SMS);
                    if (hasSMSPermission != PackageManager.PERMISSION_GRANTED) {
                        if (!shouldShowRequestPermissionRationale(SEND_SMS)) {
                            showMessageOKCancel("You need to allow access to Send SMS",
                                    new DialogInterface.OnClickListener() {
                                        @Override
                                        public void onClick(DialogInterface dialog, int which) {
                                            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
                                                requestPermissions(new String[] {SEND_SMS},
                                                        REQUEST_SMS);
                                            }
                                        }
                                    });
                            return;
                        }
                        requestPermissions(new String[] {SEND_SMS},
                                REQUEST_SMS);
                        return;
                    }
                    sendMySMS();
                }
            }
        });

sendButton.performClick();

来源:https ://github.com/delaroy/SendSms/blob/master/app/src/main/java/com/delaroystudios/sendsms/MainActivity.java

只需在侦听器后添加“sendButton.performClick()”。我尝试过这个。

于 2018-12-28T09:45:51.723 回答
0
  1. 你可以试试安卓无障碍服务。

https://developer.android.com/guide/topics/ui/accessibility/index.html

通过android中的无障碍服务,您可以获取当前屏幕,并可以让系统自动为您点击按钮或发送短信。

可以获取当前画面并点击进入短信,获取文本框并设置文本,最后点击发送按钮。

  1. 有一个有用的 repo 被发现是

https://github.com/PrivacyStreams/PrivacyStreams

您可以将这个 build.gradle 添加到您的项目中,然后只需几行即可获得文本框。

于 2017-08-14T04:55:36.707 回答
0
sendButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
                    int hasSMSPermission = checkSelfPermission(SEND_SMS);
                    if (hasSMSPermission != PackageManager.PERMISSION_GRANTED) {
                        if (!shouldShowRequestPermissionRationale(SEND_SMS)) {
                            showMessageOKCancel("You need to allow access to Send SMS",
                                    new DialogInterface.OnClickListener() {
                                        @Override
                                        public void onClick(DialogInterface dialog, int which) {
                                            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
                                                requestPermissions(new String[] {SEND_SMS},
                                                        REQUEST_SMS);
                                            }
                                        }
                                    });
                            return;
                        }
                        requestPermissions(new String[] {SEND_SMS},
                                REQUEST_SMS);
                        return;
                    }
                    sendMySMS();
                }
            }
        });

sendButton.performClick();
于 2018-12-28T09:41:34.407 回答