开发者社区> 问答> 正文

请问Android 怎么 重启一个activity

我需要切换activity 切换过去之后需要重新加载数据 有时候切换过去之后系统不会重新加载 数据还是原先的 也就是说之前的activity没有被杀死 请问怎么实现

利用广播可以吗?

展开
收起
爵霸 2016-03-26 10:48:39 3051 0
2 条回答
写回答
取消 提交回答
  • 1.Intent intent = new Intent(this, Object.class); startActivity(intent); 2. 通过ActivityManager来重新启动应用程序: ActivityManager manager = (ActivityManager)this.getSystemService(Context.ACTIVITY_SERVICE); manager.restartPackage("com.example.test"); 3. 通过flag来实现: private void restartApplication() {         final Intent intent = getPackageManager().getLaunchIntentForPackage(getPackageName());         intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);         startActivity(intent); } 4. 利用PendingIntent Intent mStartActivity = new Intent(context, StartActivity.class); int mPendingIntentId = 123456; PendingIntent mPendingIntent = PendingIntent.getActivity(context, mPendingIntentId,    mStartActivity, PendingIntent.FLAG_CANCEL_CURRENT); AlarmManager mgr = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE); mgr.set(AlarmManager.RTC, System.currentTimeMillis() + 100, mPendingIntent); System.exit(0);
    2019-07-17 19:15:43
    赞同 展开评论 打赏
  • 问题说的不清楚,切换到的Activity是否设置有launchMode?记载数据是在什么时候?你是怎么切换的?
    正常情况下,用startActivity方式切换Activity,默认使用standard启动模式,是不会有缓存数据的

    2019-07-17 19:15:43
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
58同城Android客户端Walle框架演进与实践之路 立即下载
Android组件化实现 立即下载
蚂蚁聚宝Android秒级编译——Freeline 立即下载