【问题标题】:Strange issue in Android when I install app to my device当我将应用程序安装到我的设备时,Android 中的奇怪问题
【发布时间】:2012-07-24 23:38:30
【问题描述】:

我在 Android 中遇到了一个非常奇怪的问题。

我已经创建了一个 Android 应用程序,所以当我从 Eclipse 将应用程序安装到设备时,它工作正常,没有显示任何问题。 但是,当我将 apk 文件保存在手机内存或 SD 卡(或通过电子邮件)中,然后在设备上安装 apk 文件时,它会显示一个问题。

当我打开应用程序时,它工作正常,但是当我最小化它并从应用程序启动时,应用程序再次从其第一个活动(不是从我离开的地方)重新启动,但如果我从最近的应用程序打开应用程序,它会从我离开的地方开始。

我真的不明白是什么问题。

请帮忙。

【问题讨论】:

  • 这似乎是由于缺乏内存android框架杀死你的应用程序你可以把一些登录 onLowMemory() 并检查它是否是这种情况
  • @Akki 但是当我直接从 Eclipse 安装应用程序时它工作正常。
  • 我以为你是从 Eclipse 安装在模拟器中的。不是这样吗?
  • 否,直接从 Eclipse 安装到设备。
  • 尝试卸载应用程序而不是重新安装,我认为您正在尝试覆盖可能导致问题的已安装应用程序

标签: android installation


【解决方案1】:

您可以在第一个活动的 onCreate() 中检查标志 FLAG_ACTIVITY_BROUGHT_TO_FRONT,如果已设置,则完成。

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if ((getIntent().getFlags() & Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT) != 0) {
    // Here activity is brought to front, not created,
    // so finishing this will get you to the last viewed activity
    finish();
    return;
    }

// Regular code.
}

【讨论】:

    【解决方案2】:

    这是因为从 eclipse 启动时设置了不同的标志,从包安装程序启动时设置了不同的标志。

    试试这个:

    1) copy APK to device
    2) run APK and install application but don't choose "Open" when installation is over
    3) close package installer
    4) run your application from launcher
    

    它应该和 eclipse 一样工作

    【讨论】:

    • 很好用。我按照你说的做了。但是如何解决这个问题以及用户如何知道它必须在安装后从启动器启动。
    • 我不认为你可以在这里做任何事情,因为设置这些标志的是系统..我认为这与这里的问题相同:stackoverflow.com/questions/6356467/…
    猜你喜欢
    • 2023-02-05
    • 2011-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-29
    • 1970-01-01
    • 2013-10-18
    • 2015-04-01
    相关资源
    最近更新 更多