簡體   English   中英

關閉屏幕后,有時我的應用程序活動會進入后台

[英]Activity of my app goes into background sometimes after I turn off the screen

我正在將Camera作為附加到活動的服務運行。 還有其他服務(例如上載和Firebase)與攝像頭服務一起運行。 現在,我的要求是在關閉屏幕后保持服務運行。 我也正在獲得PARTIAL_WAKE_LOCK。 該服務在最初的10或12分鍾內可以完美運行。 之后,該應用程序停止將任何日志發送到ADB。 在設備中,該應用程序會自行進入后台。 甚至onPause或onDestroy都不記錄任何內容。 日志只是停止進入Android Studio。 要恢復正常運行,我必須再次手動打開該應用,

這些是我已經嘗試過的東西,

1.獲得獲得PARTIAL_WAKE_LOCK的許可。

2.設置android:largeHeap =“ true”

3,前台服務

根據打ze模式文檔,它會忽略喚醒鎖。
同樣從Android Pie開始,無法從后台應用程序獲得相機訪問權限。
另外,根據android開發人員指南,當您的應用暫停時,您必須釋放相機,因為它會阻止所有其他應用。

在這種情況下,應調用onSaveInstanceState函數,並與您檢查是否被調用,然后在延遲的情況下再次打開活動。

@Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);

    final Handler handler = new Handler();
    handler.postDelayed(new Runnable() {
      @Override
      public void run() {
            try {
                Intent intent = new Intent(getBaseContext(), YourActivity.class);
                startActivity(intent);
                finish();
            } catch (Exception ex) { }
      }
    }, 200);

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM