Note that there are some explanatory texts on larger screens.

plurals
  1. POHow can i call a function in activity from another activity in android?
    primarykey
    data
    text
    <p>I have a problem about sending sms in android. I have two classes. one of them is SendMessage.java and other one is SendingSms.java and I want to send my messages by SendingSms.java file so there is a sendSms class in it and I want to use this sendSms function in SendMessage.java file but it couldn't be. In addition I can use function that is in SendingSms.java but when I wrote send sms codes in it, it doesn't work. What's the problem?</p> <p>here is function that is in my SendMessage.java </p> <pre><code>public void sendMessageButton (View view) { //SendingSms send = new SendingSms(); if(who_detail.getText().toString().length()&gt;0 &amp;&amp; message_text.getText().toString().length()&gt;0 ) { sendSMS(who_detail.getText().toString(), message_text.getText().toString()); } else { Toast.makeText(getApplicationContext(), R.string.sendingsms_error, Toast.LENGTH_LONG).show(); } } </code></pre> <p>here is my sendinSms.java </p> <pre><code>package com.example.stildeneme; import android.app.Activity; import android.app.PendingIntent; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.telephony.SmsManager; import android.widget.Toast; public class SendingSms extends Activity { public void sendSMS(String telNo, String mesaj) { String SENT = "SMS_SENT"; String DELIVERED = "SMS_DELIVERED"; PendingIntent sentPI = PendingIntent.getBroadcast(this, 0, new Intent(SENT), 0); PendingIntent deliveredPI = PendingIntent.getBroadcast(this, 0, new Intent(DELIVERED), 0); registerReceiver(new BroadcastReceiver() { @Override public void onReceive(Context arg0, Intent arg1) { // TODO Auto-generated method stub switch(getResultCode()) { case Activity.RESULT_OK: Toast.makeText(getBaseContext(), "SMS Gönderildi",Toast.LENGTH_SHORT).show(); break; case SmsManager.RESULT_ERROR_GENERIC_FAILURE: Toast.makeText(getBaseContext(), "Generic failure",Toast.LENGTH_SHORT).show(); break; case SmsManager.RESULT_ERROR_NO_SERVICE: Toast.makeText(getBaseContext(), "No service",Toast.LENGTH_SHORT).show(); break; case SmsManager.RESULT_ERROR_NULL_PDU: Toast.makeText(getBaseContext(), "Null PDU",Toast.LENGTH_SHORT).show(); break; case SmsManager.RESULT_ERROR_RADIO_OFF: Toast.makeText(getBaseContext(), "Radio off",Toast.LENGTH_SHORT).show(); break; } } }, new IntentFilter(SENT)); registerReceiver(new BroadcastReceiver(){ @Override public void onReceive(Context arg0, Intent arg1) { switch (getResultCode()) { case Activity.RESULT_OK: Toast.makeText(getBaseContext(), "SMS iletildi", Toast.LENGTH_SHORT).show(); break; case Activity.RESULT_CANCELED: Toast.makeText(getBaseContext(), "SMS iletilemedi", Toast.LENGTH_SHORT).show(); break; } } }, new IntentFilter(DELIVERED)); SmsManager sms = SmsManager.getDefault(); sms.sendTextMessage(telNo, null, mesaj, sentPI, deliveredPI); Toast.makeText(getApplicationContext(), telNo.toString() + " - " + mesaj.toString(), Toast.LENGTH_LONG).show(); } } </code></pre> <p>By the way, i extended my SendMessage class from SendingSms class.</p> <p>here is my logcat</p> <pre><code>11-30 09:48:09.613: E/AndroidRuntime(1007): FATAL EXCEPTION: main 11-30 09:48:09.613: E/AndroidRuntime(1007): java.lang.IllegalStateException: Could not execute method of the activity 11-30 09:48:09.613: E/AndroidRuntime(1007): at android.view.View$1.onClick(View.java:2144) 11-30 09:48:09.613: E/AndroidRuntime(1007): at android.view.View.performClick(View.java:2485) 11-30 09:48:09.613: E/AndroidRuntime(1007): at android.view.View$PerformClick.run(View.java:9080) 11-30 09:48:09.613: E/AndroidRuntime(1007): at android.os.Handler.handleCallback(Handler.java:587) 11-30 09:48:09.613: E/AndroidRuntime(1007): at android.os.Handler.dispatchMessage(Handler.java:92) 11-30 09:48:09.613: E/AndroidRuntime(1007): at android.os.Looper.loop(Looper.java:123) 11-30 09:48:09.613: E/AndroidRuntime(1007): at android.app.ActivityThread.main(ActivityThread.java:3683) 11-30 09:48:09.613: E/AndroidRuntime(1007): at java.lang.reflect.Method.invokeNative(Native Method) 11-30 09:48:09.613: E/AndroidRuntime(1007): at java.lang.reflect.Method.invoke(Method.java:507) 11-30 09:48:09.613: E/AndroidRuntime(1007): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 11-30 09:48:09.613: E/AndroidRuntime(1007): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 11-30 09:48:09.613: E/AndroidRuntime(1007): at dalvik.system.NativeStart.main(Native Method) 11-30 09:48:09.613: E/AndroidRuntime(1007): Caused by: java.lang.reflect.InvocationTargetException 11-30 09:48:09.613: E/AndroidRuntime(1007): at java.lang.reflect.Method.invokeNative(Native Method) 11-30 09:48:09.613: E/AndroidRuntime(1007): at java.lang.reflect.Method.invoke(Method.java:507) 11-30 09:48:09.613: E/AndroidRuntime(1007): at android.view.View$1.onClick(View.java:2139) 11-30 09:48:09.613: E/AndroidRuntime(1007): ... 11 more 11-30 09:48:09.613: E/AndroidRuntime(1007): Caused by: java.lang.SecurityException: Sending SMS message: User 10048 does not have android.permission.SEND_SMS. 11-30 09:48:09.613: E/AndroidRuntime(1007): at android.os.Parcel.readException(Parcel.java:1322) 11-30 09:48:09.613: E/AndroidRuntime(1007): at android.os.Parcel.readException(Parcel.java:1276) 11-30 09:48:09.613: E/AndroidRuntime(1007): at com.android.internal.telephony.ISms$Stub$Proxy.sendText(ISms.java:369) 11-30 09:48:09.613: E/AndroidRuntime(1007): at android.telephony.SmsManager.sendTextMessage(SmsManager.java:87) 11-30 09:48:09.613: E/AndroidRuntime(1007): at com.example.stildeneme.SendingSms.sendSMS(SendingSms.java:69) 11-30 09:48:09.613: E/AndroidRuntime(1007): at com.example.stildeneme.SendMessage.sendMessageButton(SendMessage.java:76) 11-30 09:48:09.613: E/AndroidRuntime(1007): ... 14 more </code></pre>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload