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()无法从静态上下文引用。感谢您的帮助。