{"_id":"@armanatz/expo-hms-location","_rev":"4-bdced55cffc229a04ffd7eef3157a65e","name":"@armanatz/expo-hms-location","dist-tags":{"latest":"1.0.3"},"versions":{"1.0.1":{"name":"@armanatz/expo-hms-location","version":"1.0.1","keywords":["expo","expo-plugin","react-native","react-native-hms-location"],"author":{"url":"https://github.com/armanatz","name":"Arman Attarzadeh","email":"hi@armanatz.com"},"license":"MIT","_id":"@armanatz/expo-hms-location@1.0.1","maintainers":[{"name":"armanatz","email":"hi@armanatz.com"}],"homepage":"https://github.com/armanatz/expo-hms-location#README.md","bugs":{"url":"https://github.com/armanatz/expo-hms-location/issues"},"dist":{"shasum":"161be119f2b69a7e87fc0da96f393e3ccb072187","tarball":"https://registry.npmjs.org/@armanatz/expo-hms-location/-/expo-hms-location-1.0.1.tgz","fileCount":26,"integrity":"sha512-Mwo2B2DSUUeWEfPkNG0WfJC1CKR5vNuD96NU7+WAoH68CGJz+l8kPrd33LuKnHUARQ5ScHGV4XFFo4BWT8MMZQ==","signatures":[{"sig":"MEQCIAX+9KJ4stXri+gyf+rQDwQQTviwv1PPYYDMVBtIB+8ZAiBIIrWu0bLuK5gTjBgdAudwKuwxSPBhzQkZJXKq90K//g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":33183},"main":"build/withHMSLocation.js","types":"build/withHMSLocation.d.ts","scripts":{"lint":"expo-module lint","test":"expo-module test","build":"expo-module build","clean":"expo-module clean","prepare":"expo-module prepare","expo-module":"expo-module","prepublishOnly":"expo-module prepublishOnly"},"_npmUser":{"name":"armanatz","email":"hi@armanatz.com"},"repository":{"url":"git+https://github.com/armanatz/expo-hms-location.git","type":"git"},"_npmVersion":"9.6.7","description":"Expo config plugin to configure @hmscore/react-native-hms-location on prebuild","directories":{},"sideEffects":false,"_nodeVersion":"18.17.1","_hasShrinkwrap":false,"devDependencies":{"expo":"^51","memfs":"^4.11.2","expo-module-scripts":"^3.5.1"},"peerDependencies":{"expo":"^51"},"peerDependenciesMeta":{"expo":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/expo-hms-location_1.0.1_1726667524156_0.23525278876121303","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"@armanatz/expo-hms-location","version":"1.0.2","keywords":["expo","expo-plugin","react-native","react-native-hms-location"],"author":{"url":"https://github.com/armanatz","name":"Arman Attarzadeh","email":"hi@armanatz.com"},"license":"MIT","_id":"@armanatz/expo-hms-location@1.0.2","maintainers":[{"name":"armanatz","email":"hi@armanatz.com"}],"homepage":"https://github.com/armanatz/expo-hms-location#README.md","bugs":{"url":"https://github.com/armanatz/expo-hms-location/issues"},"dist":{"shasum":"259fefb8ed5ff4c60a7228c902c7b9e4b92a6b92","tarball":"https://registry.npmjs.org/@armanatz/expo-hms-location/-/expo-hms-location-1.0.2.tgz","fileCount":26,"integrity":"sha512-aXlF/DJ8cDGIAHMropUU2nW1L/rXPPtxYH+GiUHJoVpMdf1Qj2laSViF5qKFLT1NCSlDphyJYgvaav/EFZyH/Q==","signatures":[{"sig":"MEQCIBbrwU8APDwu46K87qV/UZRDui+rRmbbULdn1g1Xmj5mAiAb7pyrKRkTlc3jldemfs0tBOL8nSIe6HpldD/xU5RbEQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":33320},"main":"build/withHMSLocation.js","types":"build/withHMSLocation.d.ts","gitHead":"3318ced94d074cca260706b6c7917c66a7815e98","scripts":{"lint":"expo-module lint","test":"expo-module test","build":"expo-module build","clean":"expo-module clean","prepare":"expo-module prepare","expo-module":"expo-module","prepublishOnly":"expo-module prepublishOnly"},"_npmUser":{"name":"armanatz","email":"hi@armanatz.com"},"repository":{"url":"git+https://github.com/armanatz/expo-hms-location.git","type":"git"},"_npmVersion":"10.8.2","description":"Expo config plugin to configure @hmscore/react-native-hms-location on prebuild","directories":{},"sideEffects":false,"_nodeVersion":"20.18.0","_hasShrinkwrap":false,"devDependencies":{"expo":"^51","memfs":"^4.11.2","expo-module-scripts":"^3.5.1"},"peerDependencies":{"expo":"^51"},"peerDependenciesMeta":{"expo":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/expo-hms-location_1.0.2_1729784506374_0.20143737218066016","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"@armanatz/expo-hms-location","version":"1.0.3","description":"Expo config plugin to configure @hmscore/react-native-hms-location on prebuild","main":"build/withHMSLocation.js","types":"build/withHMSLocation.d.ts","sideEffects":false,"license":"MIT","homepage":"https://github.com/armanatz/expo-hms-location#README.md","author":{"name":"Arman Attarzadeh","email":"hi@armanatz.com","url":"https://github.com/armanatz"},"repository":{"type":"git","url":"git+https://github.com/armanatz/expo-hms-location.git"},"scripts":{"build":"expo-module build","clean":"expo-module clean","test":"expo-module test","lint":"expo-module lint","prepare":"expo-module prepare","prepublishOnly":"expo-module prepublishOnly","expo-module":"expo-module"},"keywords":["expo","expo-plugin","react-native","react-native-hms-location"],"devDependencies":{"expo":">=51","expo-module-scripts":"^3.5.1","memfs":"^4.11.2"},"peerDependencies":{"expo":">=51"},"peerDependenciesMeta":{"expo":{"optional":true}},"gitHead":"647df683fc68144796f16ce0bbe69f2a97051222","bugs":{"url":"https://github.com/armanatz/expo-hms-location/issues"},"_id":"@armanatz/expo-hms-location@1.0.3","_nodeVersion":"18.17.1","_npmVersion":"9.6.7","dist":{"integrity":"sha512-hoW76+jklGlYRhH2ELudBSQ3Nn4JeJ0G6sZDWV5J+b3XI6jFCMU3IG85DeuWVGGZlhEyXFPwcfEa/g9Q2hs1Pg==","shasum":"6b2f67fe1d5d7a472847967282ab662fd0d83abf","tarball":"https://registry.npmjs.org/@armanatz/expo-hms-location/-/expo-hms-location-1.0.3.tgz","fileCount":26,"unpackedSize":33487,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCKW6FAKpbHaUOrebOTsHFZtltRxr7fxLeryPLLuZLZxQIgSP15edHvuGmG/mvnApfCgoDEO73N0cUrxggamLdu2DI="}]},"_npmUser":{"name":"armanatz","email":"hi@armanatz.com"},"directories":{},"maintainers":[{"name":"armanatz","email":"hi@armanatz.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/expo-hms-location_1.0.3_1736238433197_0.9199171199407836"},"_hasShrinkwrap":false}},"time":{"created":"2024-09-18T13:52:03.969Z","modified":"2025-01-07T08:27:13.543Z","1.0.0":"2024-09-18T13:38:14.064Z","1.0.1":"2024-09-18T13:52:04.342Z","1.0.2":"2024-10-24T15:41:46.592Z","1.0.3":"2025-01-07T08:27:13.370Z"},"bugs":{"url":"https://github.com/armanatz/expo-hms-location/issues"},"author":{"name":"Arman Attarzadeh","email":"hi@armanatz.com","url":"https://github.com/armanatz"},"license":"MIT","homepage":"https://github.com/armanatz/expo-hms-location#README.md","keywords":["expo","expo-plugin","react-native","react-native-hms-location"],"repository":{"type":"git","url":"git+https://github.com/armanatz/expo-hms-location.git"},"description":"Expo config plugin to configure @hmscore/react-native-hms-location on prebuild","maintainers":[{"name":"armanatz","email":"hi@armanatz.com"}],"readme":"# @armanatz/expo-hms-location\n\nThis Expo config plugin auto-configures @hmscore/react-native-hms-location so that is can be used\ninside an Expo application that uses Continuous Native Generation.\n\n## Compatibility\n\nThis plugin is currently only for Android and there are no plans to add iOS support at\nthe moment. I am open to PRs however so feel free to create one if you need iOS support.\n\nThis plugin was written and tested against Expo SDK 51. It should work with later versions\nof Expo unless they change something internally. If it doesn't work for versions past 51,\nleave an issue and I will look into it.\n\nIt goes without saying but this plugin cannot be used in an \"Expo Go\" app as it requires\ncustom native code.\n\n## Prerequisites\n\nEnsure that you have a Huawei AppGallery Connect account and have created an Android\nproject in there before using this plugin.\n\nThis is needed because you will require the `agconnect-services.json` file associated\nto your project.\n\n## Installation\n\nFirst install the base React Native HMS Location package:\n\n```sh\nnpm install --save @hmscore/react-native-hms-location\n```\n\nThen install this plugin:\n\n```sh\nnpx expo install @armanatz/expo-hms-location\n```\n\n### Configuration\n\nAdd `@armanatz/expo-hms-location` to your app's Expo config file (app.json, or app.config.js).\n\nThe plugin exposes the following options:\n\n| Option                         | Type    | Description                                                                 |\n|--------------------------------|---------|-----------------------------------------------------------------------------|\n| `agConnectServicesFile`        | string  | Path to your `agconnect-services.json` file.                                |\n| `isBackgroundLocationEnabled`  | boolean | (Optional) Enable location service in the background                        |\n| `enableBouncyCastleFix`        | boolean | (Optional) If you get errors related to `org.bouncycastle` (like when using `expo-updates`), then set this to true                        |\n\n**!! IMPORTANT !!**: The option `agConnectServicesFile` has to be provided, otherwise the prebuild will fail.\n\n---\n\nExample configuration:\n\n```\n\"expo\": {\n  ...\n  \"plugins\": [\n      [\n        \"@armanatz/expo-hms-location\",\n        {\n          \"agConnectServicesFile\": \"./path/to/agconnect-services.json\",\n          \"isBackgroundLocationEnabled\": true,\n          \"enableBouncyCastleFix\": true\n        }\n      ]\n  ]\n}\n```\n\n### Post Configuration\n\nAfter adding the plugin to your Expo config file, ensure you rebuild your app\nby running `prebuild` so that the plugin can apply its changes accordingly.\n\nIf all goes well, your app should now be able to use the `@hmscore/react-native-hms-location`\npackage inside your Expo application.\n\n## Changes Made By This Plugin\n\n1. Copies your `agconnect-services.json` file to the `android/app` directory\n2. Extracts the App ID of your application from the `agconnect-services.json`\n3. Sets extracted App ID in `AndroidManifest.xml`\n4. Adds relevant location permissions in `AndroidManifest.xml` as per [Huawei's docs](https://developer.huawei.com/consumer/en/doc/HMS-Plugin-Guides/locationservice-0000001050043283#section2628322193219)\n5. Adds the Huawei Developer Maven repo to the project's `build.gradle` file\n6. Pins the Android Gradle Build Tools version to `8.6.0` (This is needed because the Huawei SDKs cause build errors without it)\n7. Adds the Huawei AGCP SDK to the project's `build.gradle` file\n8. Applies the Huawei AGConnect plugin inside the app's `build.gradle` file\n9. Adds the Huawei Location Kit SDK to the app's `build.gradle` file\n10. If `enableBouncyCastleFix` is set to true, will resolve `org.bouncycastle` dependency\n","readmeFilename":"README.md"}