Standalone transparent activity is showing in recents holding previous intent
I have a StandaloneActivity which handles action.SEND which does some work and finishes.
<activity
android:name=".StandaloneActivity"
android:launchMode="singleInstance"
android:theme="@style/Theme.Transparent">
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
</activity>
It has transparent theme:
<style name="Theme.Transparent" parent="Theme.AppCompat">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:backgroundDimEnabled">false</item>
</style>
StandaloneActivity.kt
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
handleIntentExtras(intent)
}
override fun onNewIntent(intent: Intent) {
super.onNewIntent(intent)
handleIntentExtras(intent)
}
private fun handleIntentExtras(intent: Intent) {
// do some work and set extras to intent
//Calling setResult() as I start this activity from another activity with startActivityForResult() for another usecase.
setResult(Activity.RESULT_OK, intent)
finish()
}
Expected is, whenever a user shares something with my app from another app, user should not leave current app but StandaloneActivity should be able to do work and finish. StandaloneActivity (my app) should not remain in recents.
The weird this is above setup works as expected in Java version of app but with Kotlin (migrating from Java to Kotlin) StandaloneActivity (my app) is visible in recents and on opening it, it is processing the previous intent and getting finished. StandaloneActivity remains in the recents.
android android-activity kotlin
add a comment |
I have a StandaloneActivity which handles action.SEND which does some work and finishes.
<activity
android:name=".StandaloneActivity"
android:launchMode="singleInstance"
android:theme="@style/Theme.Transparent">
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
</activity>
It has transparent theme:
<style name="Theme.Transparent" parent="Theme.AppCompat">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:backgroundDimEnabled">false</item>
</style>
StandaloneActivity.kt
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
handleIntentExtras(intent)
}
override fun onNewIntent(intent: Intent) {
super.onNewIntent(intent)
handleIntentExtras(intent)
}
private fun handleIntentExtras(intent: Intent) {
// do some work and set extras to intent
//Calling setResult() as I start this activity from another activity with startActivityForResult() for another usecase.
setResult(Activity.RESULT_OK, intent)
finish()
}
Expected is, whenever a user shares something with my app from another app, user should not leave current app but StandaloneActivity should be able to do work and finish. StandaloneActivity (my app) should not remain in recents.
The weird this is above setup works as expected in Java version of app but with Kotlin (migrating from Java to Kotlin) StandaloneActivity (my app) is visible in recents and on opening it, it is processing the previous intent and getting finished. StandaloneActivity remains in the recents.
android android-activity kotlin
add a comment |
I have a StandaloneActivity which handles action.SEND which does some work and finishes.
<activity
android:name=".StandaloneActivity"
android:launchMode="singleInstance"
android:theme="@style/Theme.Transparent">
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
</activity>
It has transparent theme:
<style name="Theme.Transparent" parent="Theme.AppCompat">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:backgroundDimEnabled">false</item>
</style>
StandaloneActivity.kt
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
handleIntentExtras(intent)
}
override fun onNewIntent(intent: Intent) {
super.onNewIntent(intent)
handleIntentExtras(intent)
}
private fun handleIntentExtras(intent: Intent) {
// do some work and set extras to intent
//Calling setResult() as I start this activity from another activity with startActivityForResult() for another usecase.
setResult(Activity.RESULT_OK, intent)
finish()
}
Expected is, whenever a user shares something with my app from another app, user should not leave current app but StandaloneActivity should be able to do work and finish. StandaloneActivity (my app) should not remain in recents.
The weird this is above setup works as expected in Java version of app but with Kotlin (migrating from Java to Kotlin) StandaloneActivity (my app) is visible in recents and on opening it, it is processing the previous intent and getting finished. StandaloneActivity remains in the recents.
android android-activity kotlin
I have a StandaloneActivity which handles action.SEND which does some work and finishes.
<activity
android:name=".StandaloneActivity"
android:launchMode="singleInstance"
android:theme="@style/Theme.Transparent">
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
</activity>
It has transparent theme:
<style name="Theme.Transparent" parent="Theme.AppCompat">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:backgroundDimEnabled">false</item>
</style>
StandaloneActivity.kt
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
handleIntentExtras(intent)
}
override fun onNewIntent(intent: Intent) {
super.onNewIntent(intent)
handleIntentExtras(intent)
}
private fun handleIntentExtras(intent: Intent) {
// do some work and set extras to intent
//Calling setResult() as I start this activity from another activity with startActivityForResult() for another usecase.
setResult(Activity.RESULT_OK, intent)
finish()
}
Expected is, whenever a user shares something with my app from another app, user should not leave current app but StandaloneActivity should be able to do work and finish. StandaloneActivity (my app) should not remain in recents.
The weird this is above setup works as expected in Java version of app but with Kotlin (migrating from Java to Kotlin) StandaloneActivity (my app) is visible in recents and on opening it, it is processing the previous intent and getting finished. StandaloneActivity remains in the recents.
android android-activity kotlin
android android-activity kotlin
edited Nov 21 '18 at 4:05
asked Nov 21 '18 at 3:51
Rohit Surwase
24328
24328
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
I have tried to recreate the same setup with a simple demo app and after playing around with diffrent launch modes and flags I got the solution.
I have to exclude this activity from the recents, so I added following to the StandaloneActivity in the manifest along with existing setup-
android:excludeFromRecents="true"
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53405022%2fstandalone-transparent-activity-is-showing-in-recents-holding-previous-intent%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
I have tried to recreate the same setup with a simple demo app and after playing around with diffrent launch modes and flags I got the solution.
I have to exclude this activity from the recents, so I added following to the StandaloneActivity in the manifest along with existing setup-
android:excludeFromRecents="true"
add a comment |
I have tried to recreate the same setup with a simple demo app and after playing around with diffrent launch modes and flags I got the solution.
I have to exclude this activity from the recents, so I added following to the StandaloneActivity in the manifest along with existing setup-
android:excludeFromRecents="true"
add a comment |
I have tried to recreate the same setup with a simple demo app and after playing around with diffrent launch modes and flags I got the solution.
I have to exclude this activity from the recents, so I added following to the StandaloneActivity in the manifest along with existing setup-
android:excludeFromRecents="true"
I have tried to recreate the same setup with a simple demo app and after playing around with diffrent launch modes and flags I got the solution.
I have to exclude this activity from the recents, so I added following to the StandaloneActivity in the manifest along with existing setup-
android:excludeFromRecents="true"
answered Nov 22 '18 at 2:26
Rohit Surwase
24328
24328
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53405022%2fstandalone-transparent-activity-is-showing-in-recents-holding-previous-intent%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown