这是我的应用程序代码,在下面的nto去意图部分我用的调试我发现不是一行接一行 xmlResponse2 [0] [I] =试验[Ⅰ]; 我错了?任何人都可以帮助我不会启动任何活动和代码破坏后 xmlResponse2 [0] [I] =试验[Ⅰ];这一行
public void onReceive(Context context, Intent intent)
{
//---get the SMS message passed in---
Bundle bundle = intent.getExtras();
SmsMessage[] msgs = null;
String str = "";
if (bundle != null)
{
//---retrieve the SMS message received---
Object[] pdus = (Object[]) bundle.get("pdus");
msgs = new SmsMessage[pdus.length];
for (int i=0; i<msgs.length; i++){
msgs[i] = SmsMessage.createFromPdu((byte[])pdus[i]);
str += "SMS from " + msgs[i].getOriginatingAddress();
str += " :";
str += msgs[i].getMessageBody().toString();
str += "\n";
String[][] xmlResponse2= null;
String[] test = str.split("\n");
xmlResponse2= new String[0][test.length];
for (int i = 0; i < test.length; i++) {
xmlResponse2[0][i]=test[i];
Intent l = new Intent(context,AgAppMenu.class);
l.putExtra("msg",xmlResponse2);
l.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(l);
}
//---display the new SMS message---
Toast.makeText(context, str, Toast.LENGTH_SHORT).show();
答案 0 :(得分:0)
本声明:
xmlResponse2= new String[0][test.length];
创建一个包含0个元素的数组(即:带有NO元素)。也许你想创建一个包含1个元素的数组,如下所示:
xmlResponse2= new String[1][test.length];
答案 1 :(得分:0)
xmlResponse2= new String[test.length];
for (int i = 0; i < test.length; i++) {
xmlResponse2[i]=test[i];
}
Intent l = new Intent(context,AgAppMenu.class);
l.putExtra("msg",xmlResponse2);
// l.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(l);