import React, { useEffect, useState } from "react"; import { View, Text, Button, ActivityIndicator, StyleSheet } from "react-native"; import AsyncStorage from "@react-native-async-storage/async-storage"; import { WebView } from "react-native-webview"; const SHORT_LINK = "https://earnlinks.in/ik5L"; // your verification link const VERIFICATION_KEY = "lastVerified"; const DOWNLOAD_LINK = "https://muftukmall.fun/linkchanger"; // download link export default function App() { const [verified, setVerified] = useState(false); const [checking, setChecking] = useState(true); const [showWebView, setShowWebView] = useState(false); // Check if user already verified in last 24h useEffect(() => { const checkVerification = async () => { const lastVerified = await AsyncStorage.getItem(VERIFICATION_KEY); if (lastVerified) { const diff = Date.now() - parseInt(lastVerified, 10); if (diff < 24 * 60 * 60 * 1000) { setVerified(true); } } setChecking(false); }; checkVerification(); }, []); // Mark verification complete const completeVerification = async () => { await AsyncStorage.setItem(VERIFICATION_KEY, Date.now().toString()); setVerified(true); }; // Show loading spinner while checking if (checking) { return ( ); } // Show verification page if not yet verified if (!verified) { return ( { if (request.url !== SHORT_LINK) { completeVerification(); return false; // block final redirect } return true; }} /> ); } // Show in-app browser with your download link if (showWebView) { return ( { // Detect if site redirects to a back URL if (navState.url.includes("muftukmall.fun/back")) { setShowWebView(false); // Close browser and return to app } }} /> ); } // Main app after verification return ( ✅ Verification Successful You can now access your download link

Comments