如何在Android中通过短信发送通话记录?

如何在Android中通过短信发送通话记录?,android,sms,calllog,Android,Sms,Calllog,我正试图通过短信发送CallLog历史记录。好的,CallLog历史记录显示在TextView中,但短信不起作用 代码: 因为您的消息字符串长度可能超过一个消息长度,所以如果字符串超过SMS大小限制,请使用以下命令发送消息: SmsManager sms = SmsManager.getDefault(); if(str.length()>160){ ArrayList<String> smses = smsManager.divideMessage(str);

我正试图通过短信发送
CallLog
历史记录。好的,
CallLog
历史记录显示在
TextView
中,但短信不起作用

代码:


因为您的消息字符串长度可能超过一个消息长度,所以如果字符串超过SMS大小限制,请使用以下命令发送消息:

SmsManager sms = SmsManager.getDefault(); 

if(str.length()>160){
    ArrayList<String> smses = smsManager.divideMessage(str);  

        smsManager.sendMultipartTextMessage("5554", null,
                    smses, null, null);
 }
else{
      sms.sendTextMessage("5554", null, smses, null, null);
 }

您的代码运行良好

SmsManager sm=SmsManager.getDefault();

String phoneNumber="xxxxxxxxxx";
String message="test text message";

sm.sendTextMessage(phoneNumber, null, message, null, null);
我认为您需要添加此权限

<uses-permission android:name="android.permission.SEND_SMS"/>

我试过了,发了一条短信也收了我的钱。:)

希望对你有帮助


谢谢。

发送呼叫登录信息

SmsManager sms = SmsManager.getDefault();
ArrayList<String> part = sms.divideMessage(sb.toString());
sms.sendMultipartTextMessage("number to whom u wanna send", null, part, null, null);
smsmsmanager sms=smsmsmanager.getDefault();
ArrayList部分=sms.divideMessage(sb.toString());
sms.sendMultipartTextMessage(“您要发送的号码”,null,part,null,null);
现在接收方将把它当作一条消息来处理,我试着将这一块消息分成多个部分发送,但在一块消息中接收

发送方

接收器侧


您是否只需要在后台发送短信,或者如果短信撰写屏幕出现在图片中是否可以?@PratikSharma in backgroundOK。请参阅我在下面发布的解决方案。我已经验证了该解决方案,它对我来说运行良好。谢谢!但是我们不能发送一条消息吗?@Learner678:只需检查条件,因为我不确定消息长度,这就是为什么我使用160。您可以搜索默认消息长度,然后检查它是否在两种情况下都有效。尝试更改
if(str.length()>130)
而不是
if(str.length()>160)
好的!我已更改为其他数字,但消息仍分为多个数字。@Learner678:这是另一个问题亲爱的,请在真实设备上检查它,或就此问题提出新问题。多谢多谢我现在包括了
android.permission。请阅读清单中的联系人及其在真实设备上的工作情况。在emulator中,它的工作没有添加android.permission.READ_CONTACTS
我想以sms:)的形式发送呼叫记录,并且ρ∑ρєK的代码工作!您的通话记录历史记录字符串的总长度是多少?对不起!!不知道。如何获取它?
str.length()将完成此操作。
<uses-permission android:name="android.permission.SEND_SMS"/>
SmsManager sms = SmsManager.getDefault();
ArrayList<String> part = sms.divideMessage(sb.toString());
sms.sendMultipartTextMessage("number to whom u wanna send", null, part, null, null);