第三方應(yīng)用發(fā)送短信,需要授予短信權(quán)限.沒有權(quán)限的話. 沒法運行本文中的代碼. 申請短信權(quán)限,包括怎么在AndroidManifast.xml文件中聲明權(quán)限,百度一下就有答案. 這里不贅述了, pro版的Autojs,有專門的配置權(quán)限的選項,更簡單一些. 免費版的autojs版本,就需要用一些改包工具,去修改AndroidManifast.xml文件中的權(quán)限聲明了,比如mt文件管理器.修改完apk包,因為簽名被修改了,所以會提示有風(fēng)險,這點可以無須理會,并不是說植入了病毒,apk仍然可正常安裝運行.
如果說,有些新朋友對于autojs這款自動化工具的使用不太了解的, 后面我會做幾期文章,講解一下.
關(guān)于靜默發(fā)送短信的腳本代碼, 我之前也寫過一篇文章,可以參考一下:
Autojs后臺靜默發(fā)短信.
好了關(guān)于使用多卡多待的手機(jī)在后臺發(fā)送短信,可參考下面的代碼:
importClass( android.content.Context );
importClass( java.lang.Class );
importClass( java.lang.Integer );
importClass( android.telephony.SmsManager );
let phone = "10086";
let message = "1";
//使用卡1發(fā)短信填1 使用卡2發(fā)短信填2
let smsCard = 2;
getSms( smsCard ).sendTextMessage( phone, null, message, null, null );
function getSms( choiceSms ) {
let sms = SmsManager.getDefault();
let subscriptionManager = context.getSystemService( Context.TELEPHONY_SUBSCRIPTION_SERVICE );
let list = subscriptionManager.activeSubscriptionInfoList;
if ( list.size() < 2 ) {
console.log("非雙卡手機(jī)");
exit();
}
let smsArray = list.toArray();
var jsArray = [];
for ( let i in smsArray ) {
let smsId = smsArray[ i ].toString().split( "," )[0].split( "=" )[1];
jsArray.push( smsId );
}
let clazz = Class.forName( "android.telephony.SmsManager" );
let field = clazz.getDeclaredField( "mSubId" );
field.setAccessible( true );
field.set( sms, new Integer( jsArray[ choiceSms - 1 ] ) );
return sms;
}
-
Pro
+關(guān)注
關(guān)注
0文章
95瀏覽量
39392 -
文件
+關(guān)注
關(guān)注
1文章
566瀏覽量
24746 -
代碼
+關(guān)注
關(guān)注
30文章
4788瀏覽量
68616
發(fā)布評論請先 登錄
相關(guān)推薦
評論