2015-12-10 51 views
0

我是Cordova的新手,任何幫助將不勝感激。VS2015 Cordova Sms插件Sms.Send在Index.JS中不起作用(ondeviceReady)

我在VS2015中創建了一個新的Cordova項目,並在我的項目中添加了Cordova SMS插件(https://www.npmjs.com/package/cordova-sms-plugin)。

添加此代碼到/www/scripts/index.js功能onDeviceReady(每documentiation作爲插件):

function onDeviceReady() { 
    // Handle the Cordova pause and resume events 
    document.addEventListener('pause', onPause.bind(this), false); 
    document.addEventListener('resume', onResume.bind(this), false); 

    var numberString = "aoeuaeu"; 
    var bypassAppChooser = true; 

    //CONFIGURATION 
    var options = { 
     replaceLineBreaks: false, 
     android: { 
      intent: 'INTENT' // send SMS with the native android SMS messaging 
     } 
    }; 

    var successSMS = function() { alert('Message sent successfully'); }; 
    var errorSMS = function (e) { alert('Message Failed:' + e); }; 
    sms.send("0811231234", "Testing123", options, successSMS, errorSMS); 

本人調試使用調試,機器人,紋波項目 - 選定的Nexus(銀河)選項。當我在sms.send代碼行放置一個斷點並添加一個'sms.send'的手錶時,我可以看到該對象存在。

當我單步,這條線在sms.js似乎是執行的最後一行:

// fire 
exec(
    success, 
    failure, 
    'Sms', 
    'send', [phone, message, androidIntent, replaceLineBreaks] 
); 

然後我在紋波收到以下錯誤信息:

「Sms.send我們似乎錯過了一些東西:(雖然你可以填寫textarea來傳遞一個json對象到你想要執行的回調函數,但是有些東西很酷)。'

我可以看到該行中的所有對象都已定義(成功,失敗,電話,消息,androidIntent,replaceLineBreaks)。當我「進入」這一行時,它會繼續在ripple.js中執行代碼,但由於此文件中沒有換行符,因此很難跟蹤某個人。

我在做什麼錯?我已閱讀所有文檔,我可以找到&搜索stackoverflow的問題,似乎無法找到任何解決方案的問題。

我上傳這個整個項目(壓縮),可在以下網址下載: https://drive.google.com/file/d/0BwWgTMh-JLbfNHV0MlE5Yk5IZ3M/view?usp=sharing

在此先感謝

回答

0

謝謝科爾多瓦隊在微軟的幫助我一個答案:

「Ripple有能力模擬一些插件但不是所有插件SMS不是它可以完全模擬的插件之一,但是在彈出的消息中,你可以打開成功或失敗按鈕,會嚮應用程序報告它是succ在發送短信時是否有效。雖然這並不實際發送消息,但它確實可以讓您測試應用,以瞭解其對不同結果的表現。 我試了一下你包含在第一封電子郵件中的示例代碼。在波紋中,我可以通過點擊不同的按鈕來改變警報。

嘗試其他部署方法,在VS Android Emulator和Google Emulator中都顯示失敗警報消息,說明它們不支持SMS消息。然後我在Android手機上啓動了它,並表示它已成功。

所以我相信你的選擇主要是使用紋波假髮送消息或使用設備進行測試。「

相關問題