android 成功发送 textview 的文本作为短信但在其他模拟器上收到无效字符

标签 android sms

我想清楚地解释我做了什么。我有一个列表 Activity ,它存储准备好的消息,如“稍后给我打电话!”、“我很快就会来”...当用户单击该项目时,列表项(对象)通过 getintent() 转到其他 Intent 的 TextView 。 getserializable("comingstring");现在 textview 通过 textview.setText(getintent().getserializable("comingstring").toString()) 存储这个字符串。这里没有任何问题。我输入其他模拟器的电话号码 (5554),消息已成功传递,但问题是当我查看模拟器 5554 的收件箱时,我看到传递的消息,如“@ { & !' = | 那种字符。你能告诉我一个解决方案吗?(我也尝试通过 mms.apk 发送准备好的消息(listitem 的对象)但结果再次失败。消息已成功发送但是当我阅读其他模拟器的在收件箱中收到消息,我只看到愚蠢的字符。)

消息来自listactivity。 在列表 Activity 中:

adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, messages); 
setListAdapter(adapter); 

public void onItemClick(AdapterView<?> parent, View v, int position,
                    long rowid) {
            itemMesaj = parent.getItemAtPosition(position).toString();
            SmsActivity.putExtra("itemMesaj", itemMesaj);
            startActivity(SmsActivity);
 }

在 SmsActivity 中

itemMesaj =  (String)getIntent().getSerializableExtra("itemMesaj");txtMesaj = (TextView)findViewById(R.id.txtmesaj);txtMesaj.setText(itemMesaj);

public void onClick(View src) {
switch (src.getId()) {
case R.id.btnSend:
     messageinsend = txtMesaj.getText().toString();  
     Log.d("messagecheck", messageinsend);
     sendSMS("5556", messageinsend);
    break;
default:
    break;

}

我从 http://mobiforge.com/developing/story/sms-messaging-android 中受益于 sendSMS 方法.正如我所说,发送短信或接收没有问题,唯一的问题是接收文本包含无效字符,如 "@ { & !' = |。如果我尝试像这样发送 sendSms("5556","TRYING SOME TEXT"),接收端没有问题。我看到的文本类似于 TRYING SOME TEXT。

最佳答案

问题出在从 ListView 创建/获取消息时。
代替这个

itemMesaj = parent.getItemAtPosition(position).toString(); 

试试这个

itemMesaj = adapter.getItem(position);

编辑:
在onItemClick() 参数中,View v 是被点击的 View 。所以你也可以用它来获取短信文本。喜欢

TextView tv = (TextView)v;
String message = tv.gettext();

关于android 成功发送 textview 的文本作为短信但在其他模拟器上收到无效字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7204146/

相关文章:

java - 当其他fragment中的数据发生变化时如何刷新recyclerview适配器?

Android:水平列表换行符与 trello 之类的标签

android - 在 Android 中使用 RxJava2 插入 SQLiteDatabase

Android-dismissDialog 不会关闭对话框

android - 将消息从数据库移动到收件箱

android - gammu - 在指定的超时时间内没有响应。应该是手机没连接

android - 在 Gradle 中生成声明名称不带任何后缀的 APK

android - Twilio SMS 正文不会连接 Azure 逻辑应用程序中的 URL 参数

android - 短信权限

api - 在 Windows 7 手机上访问短信和通话记录