{"id":4113,"url":"https://github.com/NishanthShankar/react-native-android-statusbar","last_synced_at":"2025-08-04T00:31:26.185Z","repository":{"id":57335260,"uuid":"43059329","full_name":"NishanthShankar/react-native-android-statusbar","owner":"NishanthShankar","description":"A react native android module to control the android statusbar.","archived":false,"fork":false,"pushed_at":"2017-08-23T22:40:15.000Z","size":65,"stargazers_count":144,"open_issues_count":3,"forks_count":26,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-07-31T23:16:55.636Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NishanthShankar.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-09-24T10:05:20.000Z","updated_at":"2023-07-27T06:49:54.000Z","dependencies_parsed_at":"2022-09-11T05:52:13.145Z","dependency_job_id":null,"html_url":"https://github.com/NishanthShankar/react-native-android-statusbar","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/NishanthShankar/react-native-android-statusbar","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NishanthShankar%2Freact-native-android-statusbar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NishanthShankar%2Freact-native-android-statusbar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NishanthShankar%2Freact-native-android-statusbar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NishanthShankar%2Freact-native-android-statusbar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NishanthShankar","download_url":"https://codeload.github.com/NishanthShankar/react-native-android-statusbar/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NishanthShankar%2Freact-native-android-statusbar/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268633574,"owners_count":24281813,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-03T02:00:12.545Z","response_time":2577,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-01-05T20:17:01.473Z","updated_at":"2025-08-04T00:31:25.901Z","avatar_url":"https://github.com/NishanthShankar.png","language":"Java","funding_links":[],"categories":["Components","Java","Others"],"sub_categories":["UI"],"readme":"# Status bar for React Native Android\n\n[![npm version](https://badge.fury.io/js/react-native-android-statusbar.svg)](https://badge.fury.io/js/react-native-android-statusbar)\n\nA react native android module to control the android statusbar.\n\n## Setup\n\nThere are five steps in the setup process\n\n1. install module\n2. update `android/settings.gradle`\n3. update `android/app/build.gradle`\n4. Register module in MainActivity.java or MainApplication.java (depending on your RN version)\n5. Rebuild and restart package manager\n\n* install module\n\n```bash\n npm i --save react-native-android-statusbar\n```\n\n* `android/settings.gradle`\n\n```gradle\n...\ninclude ':react-native-android-statusbar'\nproject(':react-native-android-statusbar').projectDir = new File(settingsDir, '../node_modules/react-native-android-statusbar')\n```\n\n* `android/app/build.gradle`\n\n```gradle\n...\ndependencies {\n    ...\n    compile project(':react-native-android-statusbar')\n}\n```  \n\n* register module on **React Native \u003e= 0.30** (in MainApplication.java)\n\n```java\nimport com.facebook.react.ReactActivity;\nimport com.facebook.react.ReactPackage;\nimport com.facebook.react.shell.MainReactPackage;\n\nimport java.util.Arrays;\nimport java.util.List;\n\nimport me.neo.react.StatusBarPackage; // \u003c--- import\n\npublic class MainApplication extends Application implements ReactApplication {\n\n    [...]\n\n    private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {\n    \n     @Override\n     protected boolean getUseDeveloperSupport() {\n         return BuildConfig.DEBUG;\n     }\n\n     @Override\n     protected List\u003cReactPackage\u003e getPackages() {\n       return Arrays.\u003cReactPackage\u003easList(\n         new MainReactPackage(),\n         new StatusBarPackage() // \u003c------- add package\n       );\n     }\n    }\n}\n```  \n\n* register module on **React Native \u003e= 0.19 and RN \u003c 0.30** (in MainActivity.java)\n\n```java\nimport com.facebook.react.ReactActivity;\nimport com.facebook.react.ReactPackage;\nimport com.facebook.react.shell.MainReactPackage;\n\nimport java.util.Arrays;\nimport java.util.List;\n\nimport me.neo.react.StatusBarPackage; // \u003c--- import\n\npublic class MainActivity extends ReactActivity {\n\n    /**\n     * Returns the name of the main component registered from JavaScript.\n     * This is used to schedule rendering of the component.\n     */\n    @Override\n    protected String getMainComponentName() {\n        return \"TonyAppReact\";\n    }\n\n    /**\n     * Returns whether dev mode should be enabled.\n     * This enables e.g. the dev menu.\n     */\n    @Override\n    protected boolean getUseDeveloperSupport() {\n        return BuildConfig.DEBUG;\n    }\n\n   /**\n   * A list of packages used by the app. If the app uses additional views\n   * or modules besides the default ones, add more packages here.\n   */\n    @Override\n    protected List\u003cReactPackage\u003e getPackages() {\n      return Arrays.\u003cReactPackage\u003easList(\n        new MainReactPackage(),\n        new StatusBarPackage(this) // \u003c------- add package, the 'this' is super important\n      );\n    }\n}\n```\n\n* register module on **React Native \u003c 0.19** (in MainActivity.java)\n\n```java\nimport me.neo.react.StatusBarPackage;  // \u003c--- import\n\npublic class MainActivity extends Activity implements DefaultHardwareBackBtnHandler {\n\n  ......\n  private static Activity mActivity = null;\n\n  @Override\n  protected void onCreate(Bundle savedInstanceState) {\n    super.onCreate(savedInstanceState);\n    mReactRootView = new ReactRootView(this);\n\n    mActivity = this;\n    mReactInstanceManager = ReactInstanceManager.builder()\n      .setApplication(getApplication())\n      .setBundleAssetName(\"index.android.bundle\")\n      .setJSMainModuleName(\"index.android\")\n      .addPackage(new MainReactPackage())\n      .addPackage(new StatusBarPackage(this))      // \u003c------- add package, the 'this' is super important\n      .setUseDeveloperSupport(BuildConfig.DEBUG)\n      .setInitialLifecycleState(LifecycleState.RESUMED)\n      .build();\n\n    mReactRootView.startReactApplication(mReactInstanceManager, \"ExampleRN\", null);\n\n    setContentView(mReactRootView);\n  }\n\n  ......\n\n}\n```\n* Run `react-native run-android` from your project root directory\n\n\n\n\n## Usage\n\n```js\nvar StatusBarAndroid = require('react-native-android-statusbar');\n\n/* The following functions do not reflect on versions before 16 */\nStatusBarAndroid.hideStatusBar()\nStatusBarAndroid.showStatusBar()\n\n/* The following functions do not reflect on versions before 21 */\nStatusBarAndroid.setRGB(int red, int green, int blue);\nStatusBarAndroid.setARGB(int alpha,int red, int green, int blue);\nStatusBarAndroid.setHexColor('#AB1223'); /*Supported formats are: #RRGGBB #AARRGGBB or :\n'red', 'blue', 'green', 'black', 'white', 'gray', 'cyan', 'magenta', 'yellow',\n'lightgray', 'darkgray', 'grey', 'lightgrey', 'darkgrey', 'aqua',\n'fuchsia', 'lime', 'maroon', 'navy', 'olive', 'purple', 'silver', 'teal'.*/\n\n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNishanthShankar%2Freact-native-android-statusbar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FNishanthShankar%2Freact-native-android-statusbar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNishanthShankar%2Freact-native-android-statusbar/lists"}