Если есть приложение, у которого есть вход в систему, и оно запускается по щелчку значка.это действие входа в систему может быть запущено другим намерением тоже.проблема в том, что когда действие выполняется (запускается при прикосновении к значку приложения) и когда оно получает вызов другого намерения, оно запускает другое действие входа в систему.
как я могу снова запустить действие входа в систему после закрытия текущего рабочего действия, когда получен другой намеренный вызов для запуска действия входа в систему.другое намерение, упомянутое выше, заключается в том, что когда пользователь выбирает определенный файл с определенным расширением, мое приложение должно быть запущено.
<activity
android:name=".login.Login"
android:configChanges="orientation|keyboardHidden"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data
android:scheme="content"
android:mimeType="application/octet-stream"
android:pathPattern=".*\\.chat"
tools:ignore="AppLinkUrlError" />
</intent-filter>
</activity>
Второе намерение называется, мое приложение загружает выбранный файл и сохраняет его во внутреннем хранилище.это метод onCreate в действии входа в систему
public void onCreate(Bundle savedInstanceState) {
if (getResources().getBoolean(R.bool.portrait_only)) {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_NOSENSOR);
} else {
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}
super.onCreate(savedInstanceState);
if (isTaskRoot()) {
Uri data = getIntent().getData();
if (data != null) {
getIntent().setData(null);
try {
importData(data);
} catch (Exception e) {
// warn user about bad data here
finish();
return;
}
}
}
...................................
}
, когда пользователь выбирает указанный файл, приложение запускает другое действие.тогда в стеке есть два входа в систему.помогите мне избавиться от этого
единственного экземпляра, были опробованы синглетские решения.но когда для режима запуска установлено значение singleinstance или singletask и получен второй вызов намерения, он не вызывает метод
importData ()
.поэтому файл, который я хочу скачать, не загружается ..