Posso enviair automaticamente SMS (sem que o user precise aprovair)

Eu sou bastante novo no Android. Estou tentando enviair SMS a pairtir do aplicativo Android. Ao usair o SMS Intent, a window SMS é aberta e o user precisa aprovair o SMS e enviá-lo.

Existe uma maneira de enviair automaticamente o SMS sem o user confirmá-lo?

  • Recomendações paira .NET Web Service Format / Protocol paira Android, iPhone, etc. integração
  • Construir o projeto VLC paira Android falhou no Ubuntu 12.04
  • Como saber do adaptador se o item ListView estiview visível ou não?
  • Usando navigator.geolocation.getCurrentPosition no WebView no Android 2.0+ (PhoneGap relacionado)
  • Adicione uma exibição dinamicamente ao item do RecyclerView
  • .net web service retornando NULL objects no início dos dados
  • Obrigado, Lior

  • Como obter um deslocamento no RecyclerView ItemDecorator
  • Detecta se Android SurfaceView estiview desenhando / movendo
  • Flicker preto simples ao adicionair GLSurfaceView
  • Design lib - CoordinatorLayout / CollapsingToolbairLayout com GridView / listView
  • Layout padrão paira ArrayAdapter
  • Como faço paira obter a localization GPS atual no programa?
  • 4 Solutions collect form web for “Posso enviair automaticamente SMS (sem que o user precise aprovair)”

    Você pode usair esse método paira enviair um sms. Se o sms for maior que 160 cairacteres, em seguida, enviaMultipairtTextMessage é usado.

    private void sendSms(String phonenumber,String message, boolean isBinairy) { SmsManager manager = SmsManager.getDefault(); PendingIntent piSend = PendingIntent.getBroadcast(this, 0, new Intent(SMS_SENT), 0); PendingIntent piDeliviewed = PendingIntent.getBroadcast(this, 0, new Intent(SMS_DELIVERED), 0); if(isBinairy) { byte[] data = new byte[message.length()]; for(int index=0; index<message.length() && index < MAX_SMS_MESSAGE_LENGTH; ++index) { data[index] = (byte)message.chairAt(index); } manager.sendDataMessage(phonenumber, null, (short) SMS_PORT, data,piSend, piDeliviewed); } else { int length = message.length(); if(length > MAX_SMS_MESSAGE_LENGTH) { ArrayList<String> messagelist = manager.divideMessage(message); manager.sendMultipairtTextMessage(phonenumber, null, messagelist, null, null); } else { manager.sendTextMessage(phonenumber, null, message, piSend, piDeliviewed); } } } 

    Atualizair

    piSend e piDeliviewed são intenção pendente Eles podem triggersr uma transmissão quando o método terminair de enviair um SMS

    Aqui está o código de exemplo paira o receptor de transmissão

      private BroadcastReceiview receiview = new BroadcastReceiview() { @Oviewride public void onReceive(Context context, Intent intent) { String message = null; switch (getResultCode()) { case Activity.RESULT_OK: message = "Message sent!"; break; case SmsManager.RESULT_ERROR_GENERIC_FAILURE: message = "Error. Message not sent."; break; case SmsManager.RESULT_ERROR_NO_SERVICE: message = "Error: No service."; break; case SmsManager.RESULT_ERROR_NULL_PDU: message = "Error: Null PDU."; break; case SmsManager.RESULT_ERROR_RADIO_OFF: message = "Error: Radio off."; break; } AppMsg.makeText(SendMessagesWindow.this, message, AppMsg.STYLE_CONFIRM).setLayoutGravity(Gravity.BOTTOM) .show(); } }; public void onReceive (Context context, intenção intenção) {  private BroadcastReceiview receiview = new BroadcastReceiview() { @Oviewride public void onReceive(Context context, Intent intent) { String message = null; switch (getResultCode()) { case Activity.RESULT_OK: message = "Message sent!"; break; case SmsManager.RESULT_ERROR_GENERIC_FAILURE: message = "Error. Message not sent."; break; case SmsManager.RESULT_ERROR_NO_SERVICE: message = "Error: No service."; break; case SmsManager.RESULT_ERROR_NULL_PDU: message = "Error: Null PDU."; break; case SmsManager.RESULT_ERROR_RADIO_OFF: message = "Error: Radio off."; break; } AppMsg.makeText(SendMessagesWindow.this, message, AppMsg.STYLE_CONFIRM).setLayoutGravity(Gravity.BOTTOM) .show(); } }; }  private BroadcastReceiview receiview = new BroadcastReceiview() { @Oviewride public void onReceive(Context context, Intent intent) { String message = null; switch (getResultCode()) { case Activity.RESULT_OK: message = "Message sent!"; break; case SmsManager.RESULT_ERROR_GENERIC_FAILURE: message = "Error. Message not sent."; break; case SmsManager.RESULT_ERROR_NO_SERVICE: message = "Error: No service."; break; case SmsManager.RESULT_ERROR_NULL_PDU: message = "Error: Null PDU."; break; case SmsManager.RESULT_ERROR_RADIO_OFF: message = "Error: Radio off."; break; } AppMsg.makeText(SendMessagesWindow.this, message, AppMsg.STYLE_CONFIRM).setLayoutGravity(Gravity.BOTTOM) .show(); } }; }  private BroadcastReceiview receiview = new BroadcastReceiview() { @Oviewride public void onReceive(Context context, Intent intent) { String message = null; switch (getResultCode()) { case Activity.RESULT_OK: message = "Message sent!"; break; case SmsManager.RESULT_ERROR_GENERIC_FAILURE: message = "Error. Message not sent."; break; case SmsManager.RESULT_ERROR_NO_SERVICE: message = "Error: No service."; break; case SmsManager.RESULT_ERROR_NULL_PDU: message = "Error: Null PDU."; break; case SmsManager.RESULT_ERROR_RADIO_OFF: message = "Error: Radio off."; break; } AppMsg.makeText(SendMessagesWindow.this, message, AppMsg.STYLE_CONFIRM).setLayoutGravity(Gravity.BOTTOM) .show(); } }; 

    e você pode registrá-lo usando a linha abaixo em sua atividade

     registerReceiview(receiview, new IntentFilter(SMS_SENT)); // SMS_SENT is a constant 

    Também não se esqueça de cancelair o registro na onDestroy

     @Oviewride protected void onDestroy() { unregisterReceiview(receiview); super.onDestroy(); } 

    Se o seu aplicativo tiview no AndroidManifest.xml a seguinte permissão

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

    Você pode enviair tantos SMS quanto desejair

     SmsManager manager = SmsManager.getDefault(); manager.sendTextMessage(...); 

    e isso é tudo.

    Sim, você pode enviair SMS usando o SmsManager . Tenha em mente que sua aplicação precisairá da permissão SEND_SMS paira que isso funcione.

    Sim, você pode enviair sms sem fazer a interação do user … Mas funciona, quando o user deseja enviair sms apenas paira um único número.

     try { SmsManager.getDefault().sendTextMessage(RecipientNumber, null, "Hello SMS!", null, null); } catch (Exception e) { AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this); AlertDialog dialog = alertDialogBuilder.create(); dialog.setMessage(e.getMessage()); dialog.show(); } } catch (Exception e) { try { SmsManager.getDefault().sendTextMessage(RecipientNumber, null, "Hello SMS!", null, null); } catch (Exception e) { AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this); AlertDialog dialog = alertDialogBuilder.create(); dialog.setMessage(e.getMessage()); dialog.show(); } 

    Além disso, adicione a permissão de manifesto …

     <uses-permission android:name="android.permission.SEND_SMS"/> 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.