z251257144 发表于 2013-1-30 04:17:09

[Android]短信发送器

如果出现resources NotFound,也就是R文件对应的属性找不到,尝试把应用程序卸载掉。
 
 
public class SMSActivity extends Activity {

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);




        Button button = (Button)this.findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
EditText numText = (EditText)SMSActivity.this.findViewById(R.id.numEdt);
//假设内部类也有外部类findViewbyId方法,则可使用 外部类.this.findViewById调用外部类的findViewById
       EditText conText = (EditText)findViewById(R.id.conEdt);
       //假设只有外部类有findViewbyId方法,内部类没有findViewById,则可使用 findViewById调用外部类的findViewById。因为程序运行时,调用findViewById时现在内部类里面寻找该方法,如果找不到就去上一层外部类里面寻找。
       String numString = numText.getText().toString();
       String conString = conText.getText().toString();
       //发短信
       SmsManager smsManager = SmsManager.getDefault();//取得默认短信管理器对象(android.telephony.SmsManager)。另一个gsm已过时,因为之前android只支持gsm网络。
       //注意在AndroidManifest.xml添加权限(android.permission.SEND_SMS)
       List<String> conStrings = smsManager.divideMessage(conString);//如果短信内容过多,就拆分多条短信发送
       for (String string : conStrings) {
smsManager.sendTextMessage(numString, null, string, null, null);
//最后二个参数为短信已发送的广播意图,最后一个参数为短信对方已收到短信的广播意图
}
       
//        Toast.makeText(SMSActivity.this, "发送成功", 1).show();
        
       Toast.makeText(getApplicationContext(), R.string.Faile, Toast.LENGTH_LONG).show();
}
});
    }
}
页: [1]
查看完整版本: [Android]短信发送器