Security News
Oracle Drags Its Feet in the JavaScript Trademark Dispute
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
@opacity-labs/react-native-opacity
Advanced tools
Opacity Networks library for React Native.
yarn add @opacity-labs/react-native-opacity
If you are using an Expo app, the native configuration changes below have been abstracted into an expo-plugin, just add it to the plugins section in you app.json
:
{
// In the plugins sectino add the following
"plugins": [
// ...,
"@opacity-labs/react-native-opacity"
]
}
You need to bump your minimum deployment target to iOS 14. On the latest versions of RN this should be the default target, if not you can do it via:
Xcode → Project Explorer → [YOUR TARGET] → General → Deployment Target
Do a pod install
Module is a Turbo Module, therefore you need to enable the new arch. Again, on the latest RN versions the new architecture should be turned on by default if not run:
cd ios && RCT_ENABLE_NEW_ARCH=1 pod install
Or modify the top of your podfile and do a pod install:
env['RCT_ENABLE_NEW_ARCH'] = '1'
If you are pulling on the latest version the package, sometimes cocoapods refuses to update it's main repo specs. You can force an update via:
rm -rf ~/.cocoapods/repos/trunk
pod repo update
RCT_ENABLE_NEW_ARCH=1 pod install --repo-update
First add the necessary repos to download the dependencies. On your root android/build.gradle
add:
allprojects {
repositories {
google()
mavenCentral()
// If you already have allprojects->respositories just make sure you have these two added
maven { url "https://maven.mozilla.org/maven2/" }
maven { url 'https://jitpack.io' }
}
}
On your apps AndroidManifest.xml
add an activity:
// Put this on the same level as other activities
<activity
android:name="com.opacitylabs.opacitycore.InAppBrowserActivity"
android:theme="@style/Theme.AppCompat.DayNight"
/>
Indenpendtly of Expo or a bare React Native app.l You need to make sure react-native.config.js
is properly set up for code generation to work:
module.exports = {
project: {
android: {
packageName: 'your.package.name', // must match your android apps package name, take a look into your apps build.gradle
},
},
};
Once everything is setup you can call the init method on your JS:
// Create an OpacityInstance.ts file
import {
init,
get,
OpacityEnvironment,
} from '@opacity-labs/react-native-opacity';
try {
init('Your API key', false, OpacityEnvironment.PRODUCTION);
} catch (e) {
console.error(`Could not start opacity SDK: ${e}`);
}
export async function getUberRiderProfile() {
try {
let profileResponse = await get('flow:uber_rider:profile');
console.log(profileResponse);
} catch (e) {
console.error(`Could not get profile ${e}`);
}
}
Then somewhere on your app you can just call the functions:
// App.tsx
import { getUberRiderProfile } from './OpacityInstance';
return <Button onPress={getUberRiderProfile} title="Get Uber Rider Profile" />;
FAQs
Opacity Networks library for React Native
The npm package @opacity-labs/react-native-opacity receives a total of 87 weekly downloads. As such, @opacity-labs/react-native-opacity popularity was classified as not popular.
We found that @opacity-labs/react-native-opacity demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.
Security News
Maven Central now validates Sigstore signatures, making it easier for developers to verify the provenance of Java packages.