簡體   English   中英

在不同的“上下文”中啟動應用程序

[英]Launch an application in a different “context”

首先,對於問題標題中的“上下文”感到抱歉,我不知道使用哪個詞。 我通過單擊來自另一個應用程序的URL成功啟動了我的應用程序,但是當我啟動任務管理器時,我意識到我的應用程序實際上沒有加載:調用者應用程序保存活動。 我想如何:

  • 在不同的“上下文”中啟動我的應用程序(再次抱歉,這會更好嗎?)
  • 能夠在已經加載的情況下重新加載我的應用程序(比如重新啟動它)。

非常感謝。

您可以通過將AndroidManifest.xml中的launchMode ”屬性設置為“ singleTask ”或“ singleInstance ”來修改行為,兩者都會導致您的Activity被創建為新任務的根。 但是,如果它已經存在,它不會重新啟動Activity,而是應該處理Activity.onNewIntent(Intent intent)回調。

要了解有關launchMode的更多信息,請訪問: http//developer.android.com/guide/topics/manifest/activity-element.html#lmode

除了Kai提到的launchMode之外,您可能還需要查看taskAffinityallowTaskReparenting ,具體取決於您的應用程序的結構。

這是一個摘錄,似乎與您描述您的應用程序的方式相符:

例如,如果電子郵件包含指向網頁的鏈接,則單擊該鏈接將顯示可顯示該頁面的活動。 該活動由瀏覽器應用程序定義,但作為電子郵件任務的一部分啟動。 如果它被重新定位到瀏覽器任務,它將在瀏覽器下一個到達前面時顯示,並且在電子郵件任務再次出現時將不再顯示。

暫無
暫無

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

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