无法从异步方法开始新的 activity
Can't start new activity from Asynchronous Method
正在尝试从异步方法启动新的 activity,但由于某种原因 activity 无法启动
protected void onPostExecute(Integer result) {
try {
if (qResult.equals(userinfo[1])) {
File file = new File("info");
FileWriter fw = new FileWriter(file);
fw.write(userinfo[0] + "\n" + userinfo[1]);
context.startActivity(new Intent(context,OtherActivity.class));
我通过将当前 activity 的上下文添加为构造函数中的参数之一来传递它:
class CreateFileConnectToDatabase extends AsyncTask<String, Void, Integer> {
Activity activity;
Context context; //ELIMINA COGLIONE
String qResult = "";
public CreateFileConnectToDatabase(Activity activity){
this.activity = activity;
this.context = activity.getApplicationContext();
}
但是它不会启动新的 activity 尽管到达了 onPostExecute 方法。我是否无法调用新的 activity 从嵌套的异步 class 开始?
您必须在 AsyncTask 构造函数中传递上下文才能获得正确的 activity 上下文,因此:
public CreateFileConnectToDatabase(Context context){
this.context = context.getApplicationContext();
}
并调用它传递您的 activity 或片段上下文:
new CreateFileConnectToDatabase(yourcontext).execute();
O.T。评论 //ELIMINA COGLIONE
让我离开了椅子。
正在尝试从异步方法启动新的 activity,但由于某种原因 activity 无法启动
protected void onPostExecute(Integer result) {
try {
if (qResult.equals(userinfo[1])) {
File file = new File("info");
FileWriter fw = new FileWriter(file);
fw.write(userinfo[0] + "\n" + userinfo[1]);
context.startActivity(new Intent(context,OtherActivity.class));
我通过将当前 activity 的上下文添加为构造函数中的参数之一来传递它:
class CreateFileConnectToDatabase extends AsyncTask<String, Void, Integer> {
Activity activity;
Context context; //ELIMINA COGLIONE
String qResult = "";
public CreateFileConnectToDatabase(Activity activity){
this.activity = activity;
this.context = activity.getApplicationContext();
}
但是它不会启动新的 activity 尽管到达了 onPostExecute 方法。我是否无法调用新的 activity 从嵌套的异步 class 开始?
您必须在 AsyncTask 构造函数中传递上下文才能获得正确的 activity 上下文,因此:
public CreateFileConnectToDatabase(Context context){
this.context = context.getApplicationContext();
}
并调用它传递您的 activity 或片段上下文:
new CreateFileConnectToDatabase(yourcontext).execute();
O.T。评论 //ELIMINA COGLIONE
让我离开了椅子。