Аппселератор титаниум - отправить смс

Я создаю мобильное приложение (iphone/android) с помощью appcelerator Titanium. Есть ли способ заставить приложение отправлять смс на любой заданный номер с помощью appcelerator Titanium?


person mim    schedule 07.06.2011    source источник


Ответы (7)


Если не хотите платить, вот смс-модуль для iOS:

http://developer.appcelerator.com/question/97961/ios-sms-dialog-module

Вам нужно будет следовать его указаниям, но вы сможете заставить его работать. Для Android вы можете просто вызвать URL-адрес с помощью «sms://»+phoneNumber или чего-то подобного.

person xtremerunnerars    schedule 07.06.2011


Есть функция, которую вы можете использовать для отправки SMS:

var SMS_SENT     = -1,
    SMS_NOT_SENT =  0;

/**
 * Open an SMS dialog with the given message.
 * If the SMS is sent, run the onSuccess callback.
 *
 * @message {text}      the text you want to send
 * @callback {function} the funciton you want to run on success
 **/
function openSmsDialog(message, onSuccess) {
    if (Ti.Platform.osname === 'android') {
        var intent = Ti.Android.createIntent({
            action: Ti.Android.ACTION_VIEW,
            type:   'vnd.android-dir/mms-sms'
        });
        intent.putExtra('sms_body', message);

        var _onClose = function(activityResult) {
            if (activityResult.resultCode === SMS_SENT && onSuccess) {
                onSuccess();
            }
        };

        Ti.Android.currentActivity.startActivityForResult(intent, _onClose);
    } else {
        var smsModule = require("com.omorandi");

        var smsDialog = smsModule.createSMSDialog({
            messageBody: message
        });

        if (onSuccess) {
            smsDialog.addEventListener('complete', onSuccess);
        }
    }
}

Чтобы этот код работал на iOS, вы должны использовать модуль com.omorandi. Для Android вам не нужен никакой модуль.

person romainsalles    schedule 20.09.2013
comment
не могли бы вы сообщить, что делает следующий код? Ti.Android.currentActivity.startActivityForResult(intent, _onClose); - person CyberJunkie; 10.04.2014

У Appcelerator есть набор модулей, которые вы можете использовать, если являетесь участником одной из их партнерских программ. Он включает в себя модуль SMS:

http://www.appcelerator.com/products/titaniumplus/

person Craig    schedule 07.06.2011

Вот отличный модуль для этого.

Поддерживает только Android. Будет отправлять смс автоматически без взаимодействия с пользователем

https://github.com/omorandi/TiAndroidSMS

person Ankesh Srivastava    schedule 01.04.2013

только что нашел ваш вопрос при поиске в Google чего-то другого. поэтому я решил, что отвечу, если кто-то столкнется с этим вопросом в будущем.

в Appcelerator Marketplace есть модуль для отправки SMS-сообщения: https://marketplace.appcelerator.com/apps/6521?1019589994

person developer82    schedule 20.09.2013

Если вы хотите просто открыть приложение SMS со своей информацией, вы можете использовать следующее:

Ti.Platform.openURL("sms:01234567891&body=hey");

Обратите внимание, что и число, и тело являются необязательными.

person Yahya Uddin    schedule 07.06.2017