ExpoIntermediate
AppState, expo-network ও offline handling
app background/foreground detect ও network status — বাংলায়।
7টি অংশবাংলা ভাষায়
app-টি background-এ গেলে/ফিরলে আমাদের কাজ— `AppState`:
import { AppState } from "react-native";
useEffect(() => {
const sub = AppState.addEventListener("change", (next) => {
if (next === "active") {
refetchTasks();
}
});
return () => sub.remove();
}, []);নেটওয়ার্ক status — `expo-network`:
terminalbash
bash
npx expo install expo-networkimport * as Network from "expo-network";
const state = await Network.getNetworkStateAsync();
// state.isConnected, state.type (WIFI / CELLULAR / NONE)- offline → banner "ইন্টারনেট নেই"
- reconnect → auto-refresh
- offline-এ লেখা queue — connect-এ sync
offline-first
data আগে local-এ (AsyncStorage/SQLite), তারপর network-এ sync — এটিই offline-first pattern। আরও বিস্তারিত connection-এর জন্য community প্যাকেজ @react-native-community/netinfo।
শেষ প্যারায় নিজে practice করুন — কোড কপি করে নিজের এডিটরে চালিয়ে দেখুন।