我是 Android 开发的新手,并设法在 StackOverflow 上获得了这个远读问题和答案。谢谢大家。
我想出了一个我无法弄清楚的问题。我看到过类似的问题,但我不清楚答案。请帮我解决这个问题。
我想从另一个类调用我的主要 Activity 的方法。当我尝试调用该方法时,应用程序崩溃了。这是代码:
在类文件上:
public class AlarmReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
MainActivity MainActivity = new MainActivity();
MainActivity.ligaInternet();
}
}
在主 Activity 文件上:
protected void ligaInternet() {
ConnectivityManager connMgr = (ConnectivityManager)
getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
if (networkInfo != null && networkInfo.isConnected()) {
String urlText="http://www.regiprof.com/regiprof_sms.php";
String stringUrl = urlText.toString();
new DownloadWebpageTask().execute(stringUrl);
}
}
如何调用 ligaInternet()
函数?
最佳答案
你可以试试
MainActivity currentActivity = ((MainActivity)context.getApplicationContext()).getCurrentActivity();
currentActivity.ligaInternet();
关于android - 如何从 broadcastReceiver 回调访问 MainActivity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32131292/