diff --git a/frontend-admin/app.json b/frontend-admin/app.json index 5e8ef4a1..a59cb3ba 100644 --- a/frontend-admin/app.json +++ b/frontend-admin/app.json @@ -28,7 +28,8 @@ "android.permission.ACCESS_COARSE_LOCATION", "android.permission.ACCESS_FINE_LOCATION", "android.permission.RECEIVE_BOOT_COMPLETED", - "android.permission.VIBRATE" + "android.permission.VIBRATE", + "android.permission.POST_NOTIFICATIONS" ] }, "web": { diff --git a/mobile/src/auth/AuthContext.tsx b/mobile/src/auth/AuthContext.tsx index 5aa0d2c4..556a0e21 100644 --- a/mobile/src/auth/AuthContext.tsx +++ b/mobile/src/auth/AuthContext.tsx @@ -1,4 +1,4 @@ -import React, { createContext, useContext, useState, useEffect, useRef, type ReactNode } from 'react'; +import React, { createContext, useContext, useState, useEffect, type ReactNode } from 'react'; import { getToken, setToken as storeToken, removeToken, getAdminToken, setAdminToken as storeAdminToken, removeAdminToken, @@ -8,12 +8,7 @@ import { clearAllAuth, } from './tokenStorage'; import { extractUsernameFromToken, extractRoleFromToken, isTokenExpired } from './jwtUtils'; -import { - setupNotificationChannel, - registerForPushNotificationsAsync, - sendPushTokenToBackend, - removePushTokenFromBackend, -} from '../services/pushNotifications'; +import { removePushTokenFromBackend } from '../services/pushNotifications'; export type UserRole = 'client' | 'admin' | 'cabine' | 'livreur' | null; @@ -36,7 +31,6 @@ interface AuthContextType extends AuthState { const AuthContext = createContext(undefined); export function AuthProvider({ children }: { children: ReactNode }) { - const pushTokenRef = useRef(null); const [state, setState] = useState({ token: null, username: null, @@ -121,15 +115,6 @@ export function AuthProvider({ children }: { children: ReactNode }) { isAuthenticated: true, mustChangePassword, }); - // Enregistrer le push token en arrière-plan - setupNotificationChannel().then(() => - registerForPushNotificationsAsync() - ).then((pushToken) => { - if (pushToken) { - pushTokenRef.current = pushToken; - sendPushTokenToBackend(pushToken); - } - }).catch(() => {/* silencieux */}); }; const setMustChangePassword = (value: boolean) => { @@ -154,7 +139,6 @@ export function AuthProvider({ children }: { children: ReactNode }) { const logout = async () => { // Supprimer le push token du backend avant de se déconnecter try { await removePushTokenFromBackend(); } catch { /* silencieux */ } - pushTokenRef.current = null; await clearAllAuth(); setState({ token: null,