Java Android-从另一个类调用方法

Java Android-从另一个类调用方法,java,android,android-intent,call,httpurlconnection,Java,Android,Android Intent,Call,Httpurlconnection,我有两个类,MainActivity.java和SMSMMonitorService.java 收到短信后,我想呼叫main活动类中的mySearch(): MainActivity.java: //public void myClickHandler(View view) { public void mySearch() { // Gets the URL from the UI's text field. String stringUrl = endPointES + ur

我有两个类,
MainActivity.java
SMSMMonitorService.java

收到短信后,我想呼叫
main活动类中的
mySearch()

MainActivity.java:

//public void myClickHandler(View view) {
public void mySearch() {

    // Gets the URL from the UI's text field.
    String stringUrl = endPointES + urlUser + "&redirects&continue=";
    //String stringUrl = urlText.getText().toString();
    ConnectivityManager connMgr = (ConnectivityManager)
            getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
    if (networkInfo != null && networkInfo.isConnected()) {
        new DownloadWebpageTask().execute(stringUrl);

    } else {
        textView.setText("No network connection available.");
        Toast.makeText(getApplicationContext(), "No network connection available", Toast.LENGTH_LONG).show();
    }
}
private final BroadcastReceiver receiver1 = new BroadcastReceiver() {
    public void onReceive(Context context, Intent intent) {
        String action = intent.getAction();
        Log.i(TAG, "WORKS");
        if (action.equals("android.provider.Telephony.SMS_RECEIVED")) {
            Log.i(TAG, "SMS Broadcast Received");
            Bundle bundle = intent.getExtras();
            SmsMessage[] messages = null;
            String message = "";
            String second = "";

            if (bundle != null) {
                Object[] pdus = (Object[]) bundle.get("pdus");
                messages = new SmsMessage[pdus.length];
                for (int i = 0; i < messages.length; i++) {
                    messages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
                    if (messages[i].getMessageBody().contains("W ") || messages[i].getMessageBody().contains("w ")) {
                        message = messages[i].getMessageBody();
                        StringTokenizer tokens = new StringTokenizer(message, " ");
                        String first = tokens.nextToken();
                        second = tokens.nextToken();
                        number = messages[i].getOriginatingAddress();
                        Toast.makeText(context, second, Toast.LENGTH_SHORT).show();                            
                    }
                }
SMSMonitorService.java:

//public void myClickHandler(View view) {
public void mySearch() {

    // Gets the URL from the UI's text field.
    String stringUrl = endPointES + urlUser + "&redirects&continue=";
    //String stringUrl = urlText.getText().toString();
    ConnectivityManager connMgr = (ConnectivityManager)
            getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
    if (networkInfo != null && networkInfo.isConnected()) {
        new DownloadWebpageTask().execute(stringUrl);

    } else {
        textView.setText("No network connection available.");
        Toast.makeText(getApplicationContext(), "No network connection available", Toast.LENGTH_LONG).show();
    }
}
private final BroadcastReceiver receiver1 = new BroadcastReceiver() {
    public void onReceive(Context context, Intent intent) {
        String action = intent.getAction();
        Log.i(TAG, "WORKS");
        if (action.equals("android.provider.Telephony.SMS_RECEIVED")) {
            Log.i(TAG, "SMS Broadcast Received");
            Bundle bundle = intent.getExtras();
            SmsMessage[] messages = null;
            String message = "";
            String second = "";

            if (bundle != null) {
                Object[] pdus = (Object[]) bundle.get("pdus");
                messages = new SmsMessage[pdus.length];
                for (int i = 0; i < messages.length; i++) {
                    messages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
                    if (messages[i].getMessageBody().contains("W ") || messages[i].getMessageBody().contains("w ")) {
                        message = messages[i].getMessageBody();
                        StringTokenizer tokens = new StringTokenizer(message, " ");
                        String first = tokens.nextToken();
                        second = tokens.nextToken();
                        number = messages[i].getOriginatingAddress();
                        Toast.makeText(context, second, Toast.LENGTH_SHORT).show();                            
                    }
                }
private final BroadcastReceiver Receiver 1=新的BroadcastReceiver(){
公共void onReceive(上下文、意图){
String action=intent.getAction();
日志i(标签“工程”);
if(action.equals(“android.provider.Telephony.SMS_RECEIVED”)){
Log.i(标签“收到短信广播”);
Bundle=intent.getExtras();
SmsMessage[]消息=null;
字符串消息=”;
字符串秒=”;
if(bundle!=null){
Object[]pdus=(Object[])bundle.get(“pdus”);
消息=新的SmsMessage[pdus.length];
for(int i=0;i
当我在
smsmmonitorservice类中收到短消息时,如何调用
mySearch()
方法?

我希望这能有所帮助

MainActivity activity = new MainActivity()
activity.mySearch();

MainActivity ma=new MainActivity();ma.mySearch();/:)另一种方法。将mySearch()设为公共静态,然后作为MainActivity.mySearch();/:)调用。谢谢!但我不能将mySearch()设为公共静态,因为DownloadWebPagetTask()无法从静态上下文引用。感谢您的帮助。