Probably solution
This commit is contained in:
parent
15afc5f8b3
commit
669e2e43ae
@ -1,7 +1,6 @@
|
|||||||
## 📱 Техническое задание
|
## 📱 Техническое задание
|
||||||
Требуется разработать нативное мобильное приложение, которое будет содержать следующие экраны.
|
Требуется разработать нативное мобильное приложение, которое будет содержать следующие экраны.
|
||||||
|
|
||||||
|
|
||||||
### 1. Экран авторизации
|
### 1. Экран авторизации
|
||||||
|
|
||||||
> Данный экран должен быть показан при первом входе в приложение, а также в ситуациях, когда пользователь не зарегистрировался в приложении.
|
> Данный экран должен быть показан при первом входе в приложение, а также в ситуациях, когда пользователь не зарегистрировался в приложении.
|
||||||
@ -25,9 +24,6 @@
|
|||||||
7. После нажатия на кнопку - при нажатии стрелки назад - экран авторизации не должен быть показан повторно.
|
7. После нажатия на кнопку - при нажатии стрелки назад - экран авторизации не должен быть показан повторно.
|
||||||
8. Экран авторизации показывается только в случае, если пользователь неавторизован.
|
8. Экран авторизации показывается только в случае, если пользователь неавторизован.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
### 2. Главный экран
|
### 2. Главный экран
|
||||||
|
|
||||||
> Данный экран содержит общую информацию о пользователе:
|
> Данный экран содержит общую информацию о пользователе:
|
||||||
@ -54,14 +50,10 @@
|
|||||||
- При нажатии кнопки сканирования необходимо открыть экран сканирования QR кода.
|
- При нажатии кнопки сканирования необходимо открыть экран сканирования QR кода.
|
||||||
- При нажатии на кнопку обновления данных - необходимо повторно вызывать сетевой запрос для получения актуальных данных.
|
- При нажатии на кнопку обновления данных - необходимо повторно вызывать сетевой запрос для получения актуальных данных.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
### 3. Экран сканирования QR-кода
|
### 3. Экран сканирования QR-кода
|
||||||
|
|
||||||
> Данный экран позволяет отсканировать код на турникете и войти с помощью смартфона. В данном случае данный экран будет уже написан и представлен dам в готовом виде в заготовке. Вам необходимо только подписаться на его результат с помощью **Result API** и обработать считанные данные из QR кода. **Данный экран нельзя модифицировать. Он поставляется как есть.**
|
> Данный экран позволяет отсканировать код на турникете и войти с помощью смартфона. В данном случае данный экран будет уже написан и представлен dам в готовом виде в заготовке. Вам необходимо только подписаться на его результат с помощью **Result API** и обработать считанные данные из QR кода. **Данный экран нельзя модифицировать. Он поставляется как есть.**
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
### 4. Экран с результатом сканирования QR кода
|
### 4. Экран с результатом сканирования QR кода
|
||||||
|
|
||||||
> На данном экране необходимо вывести успешность или неуспешность входа с помощью метода QR кода.
|
> На данном экране необходимо вывести успешность или неуспешность входа с помощью метода QR кода.
|
||||||
|
@ -28,18 +28,6 @@ public class QrResultFragment extends Fragment {
|
|||||||
super(R.layout.fragment_qr_result);
|
super(R.layout.fragment_qr_result);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onCreate(@Nullable Bundle savedInstanceState) {
|
|
||||||
super.onCreate(savedInstanceState);
|
|
||||||
|
|
||||||
getParentFragmentManager().setFragmentResultListener(QrScanDestination.REQUEST_KEY, this, new FragmentResultListener() {
|
|
||||||
@Override
|
|
||||||
public void onFragmentResult(@NonNull String requestKey, @NonNull Bundle result) {
|
|
||||||
resultQr = QrScanDestination.INSTANCE.getDataIfExist(result);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
|
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
|
||||||
super.onViewCreated(view, savedInstanceState);
|
super.onViewCreated(view, savedInstanceState);
|
||||||
@ -51,6 +39,15 @@ public class QrResultFragment extends Fragment {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getParentFragmentManager().setFragmentResultListener(QrScanDestination.REQUEST_KEY, this, new FragmentResultListener() {
|
||||||
|
@Override
|
||||||
|
public void onFragmentResult(@NonNull String requestKey, @NonNull Bundle result) {
|
||||||
|
resultQr = QrScanDestination.INSTANCE.getDataIfExist(result);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
Log.d("status", String.valueOf(resultQr != null));
|
||||||
|
|
||||||
binding = FragmentQrResultBinding.bind(view);
|
binding = FragmentQrResultBinding.bind(view);
|
||||||
|
|
||||||
viewModel = new ViewModelProvider(this).get(QrResultViewModel.class);
|
viewModel = new ViewModelProvider(this).get(QrResultViewModel.class);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user