title: SmsManager SendDataMessage in Android
body: <p>I was using the Android SmsManager provided API <a href="https://developer.android.com/reference/android/telephony/SmsManager.html#sendDataMessage(java.lang.String,%20java.lang.String,%20short,%20byte[],%20android.app.PendingIntent,%20android.app.PendingIntent)" rel="nofollow noreferrer">sendDataMessage</a> to send SMS messages and noticed that the behavior seems to change from different devices, Here are my observations. </p>
  
  <p>I am able to send messages successfully</p>
  
  <ol>
  <li>On all devices (Nexus 6p, Nexus6, Nexus5) if Cellular data is turned on</li>
  <li><strong>On Nexus6p</strong> only if cellular data is turned off</li>
  </ol>
  
  <p><strong>My Questions:</strong></p>
  
  <ol>
  <li>Are there any internal changes that occured? Is this device specific/ carrier specific or API specific?  </li>
  <li>How is the sendDataMessage different from the sendTextMessage with respect to the communication channel used? </li>
  <li>Does the byte[] data sent to the API needed to be 7 bit encoded?  </li>
  </ol>