@silicon.js/app-updates
v1.0.2
Published
lightweight react package for checking app updates from ios app store and android play store using react context
Downloads
59
Maintainers
Readme
App Updates Package
A React Native package for checking app version updates from iOS App Store and Android Play Store using React Context.
Usage Example
Wrap your root with AppUpdatesProvider:
import React from 'react';
import { AppUpdatesProvider, useAppUpdates } from '@silicon.js/app-updates';
import { Platform } from 'react-native';
export default function App() {
const appUpdatesMethods = useAppUpdates({
currentVersion: '1.0.0',
appId: Platform.OS === 'ios' ? 'com.yourcompany.yourapp' : 'com.yourcompany.yourapp',
platform: Platform.OS,
autoCheck: true,
countryCode: 'us', // optional, for iOS App Store
});
return (
<AppUpdatesProvider methods={appUpdatesMethods}>
{/* other providers */}
{/* app screens here */}
</AppUpdatesProvider>
);
}Use app updates context anywhere in your app:
import { useAppUpdatesContext } from '@silicon.js/app-updates';
const DemoScreen = () => {
const { details, checkVersion } = useAppUpdatesContext();
return (
<>
{details.isNewVersionAvailable && (
<View>
<Text>New version {details.latestVersion} is available!</Text>
<Button onPress={checkVersion} title="Check Again" />
</View>
)}
{details.isChecking && <Text>Checking for updates...</Text>}
{details.error && <Text>Error: {details.error}</Text>}
</>
);
};API Reference
useAppUpdates Hook
| Property | Type | Required | Description | | -------------- | ------------------- | -------- | ---------------------------------------------- | | currentVersion | string | yes | current app version (e.g., '1.0.0') | | appId | string | yes | bundle ID (iOS) or package name (Android) | | platform | 'ios' | 'android' | yes | target platform | | autoCheck | boolean | no | automatically check on mount (default: true) | | countryCode | string | no | country code for iOS App Store (default: 'us') |
useAppUpdatesContext Hook
Returns an object with:
| Property | Type | Description | | --------------------- | ----------------------- | ---------------------------------------------- | | details | AppUpdatesInfo | app updates information object | | checkVersion | () => Promise<void> | manually trigger version check |
AppUpdatesInfo Interface
| Property | Type | Description | | --------------------- | ----------------------- | ---------------------------------------------- | | currentVersion | string | current app version | | latestVersion | string | null | latest version from store | | isNewVersionAvailable | boolean | whether a new version is available | | isChecking | boolean | whether version check is in progress | | lastChecked | Date | null | timestamp of last version check | | error | string | null | error message if check failed |
