tLink
-
Постов
3 -
Зарегистрирован
-
Посещение
-
Победитель дней
1
Сообщения, опубликованные tLink
-
-
Всем, добрый день,
Хочу сделать кнопку logout.
Для http запросов использую NetHttpClient, авторизация на OnAuthEvent. Во время работы приложения передаю куки от NetHttpClient в браузер кодом:
procedure {$IFDEF ANDROID} var CookieSyncManager: JCookieSyncManager; CookieManager : JCookieManager; Cookie: TCookie; {$ENDIF} Begin {$IFDEF ANDROID} if High(NetHTTPClient1.CookieManager.Cookies) >= 0 then begin Cookie := NetHTTPClient1.CookieManager.Cookies[0]; CookieSyncManager := TJCookieSyncManager.JavaClass.createInstance(TAndroidHelper.Context); CookieManager := TJCookieManager.JavaClass.getInstance; CookieManager.setAcceptCookie(True); CookieManager.setCookie(StringToJString(BaseURL), StringToJString(Cookie.ToString)); CookieSyncManager.sync(); end; {$ENDIF} end;
Очищаю следующим образом:
procedure TNetModule.LogOut; {$IFDEF ANDROID} var CookieSyncManager: JCookieSyncManager; CookieManager : JCookieManager; //NeedSync: Boolean; {$ENDIF} begin // очистить куки ? NetModule.NetHTTPClient1.CredentialsStorage.ClearCredentials; NetHTTPClient1.CookieManager.DeleteCookies; {$IFDEF ANDROID} CookieSyncManager := TJCookieSyncManager.JavaClass.createInstance(TAndroidHelper.Context); CookieManager := TJCookieManager.JavaClass.getInstance; CookieManager.setAcceptCookie(False); if TJBuild_VERSION.JavaClass.SDK_INT < 21 then CookieManager.removeAllCookie() else CookieManager.removeAllCookies(nil); CookieSyncManager.Sync(); {$ENDIF} LoginForm.Show; end;
DeleteCookies выполняется с помощью хелпера:
// interface TCookieManagerHelper = class helper for TCookieManager procedure DeleteCookies; end; // implementation procedure TCookieManagerHelper.DeleteCookies; begin with Self do FCookies.Clear; end;
Но при новой авторизации событие OnAuthEvent не срабатывает, следовательно можно зайти и вовсе без пароля. Использую Delphi 10.2.2. Проверял на Android 8.0 и 5.0. Кто-нибудь сталкивался с таким?
ps iPhone тоже есть такая проблема, но хотя бы здесь разобраться.
-
Всем доброго времени суток,
Столкнулся с проблемой на iOS. На форме TabControl, на одной из вкладок лежит MapView (примерчик приложил). Если "свернуть/развернуть" приложение и походить по вкладкам, то пропадают иконки у TabControl, показывает как чёрные квадраты. Иконки установлены через ImageList. Такой же эффект и у ListView/Image на соседних вкладках. Можете что-то подсказать?
изменение targetSdkVersion и артефакты на экране
в Android
Опубликовано
Может это поможет.