Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 13 additions & 1 deletion apps/portal/src/app/react-native/v5/getting-started/page.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -159,12 +159,24 @@ If the Expo CLI says "Using Expo Go" when starting the app, press `s` to switch

</Callout>

Examples:
Prebuild the app (only needed once):

```shell
npx expo prebuild
```

Run the development build on ios:

```shell
npx expo:run ios
```

Run the development build on android:

```shell
npx expo:run android
```

</Step>

<Step title=" Use the `thirdweb` package normally">
Expand Down
7 changes: 6 additions & 1 deletion apps/portal/src/app/react-native/v5/sidebar.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Book, CodeIcon, ZapIcon } from "lucide-react";
import { Book, BugIcon, CodeIcon, ZapIcon } from "lucide-react";
import type { SideBar } from "../../../components/Layouts/DocLayout";
import { ReactIcon, TypeScriptIcon } from "../../../icons";
import { fetchTypeScriptDoc } from "../../references/components/TDoc/fetchDocs/fetchTypeScriptDoc";
Expand All @@ -22,6 +22,11 @@ export const sidebar: SideBar = {
href: `${slug}/getting-started`,
icon: <ZapIcon />,
},
{
name: "Troubleshooting",
href: `${slug}/troubleshooting`,
icon: <BugIcon />,
},
{ separator: true },
{
name: "Core",
Expand Down
79 changes: 79 additions & 0 deletions apps/portal/src/app/react-native/v5/troubleshooting/page.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
# Troubleshooting

## Expo Go

Due to required native dependencies, you cannot use Expo Go for running your app. You must use a development build.

You can create ios/android development builds using the following command:

```shell
npx expo prebuild
```

You can then run the development build using the following command:

```shell
npx expo:run ios
```

```shell
npx expo:run android
```

## OpenSSL iOS build error

If you see a build error that mentions OpenSSL, you may need to update `app.json` to pin a version of OpenSSL that is compatible with your Xcode version.

Here's how to pin the OpenSSL version in `app.json`:

```json
{
"expo": {
"plugins": [
"expo-build-properties",
{
"ios": {
"extraPods": [
{
"name": "OpenSSL-Universal",
"configurations": ["Release", "Debug"],
"modular_headers": true,
"version": "<OPENSSL_VERSION>"
}
]
}
}
]
}
}
```

Replace `<OPENSSL_VERSION>` with the correct version of OpenSSL for your Xcode version:

- Xcode 16: `3.3.2000`
- Xcode 15: `3.1.5004`

Make sure you have `expo-build-properties` added to your `package.json` dependencies.

## Android minSdkVersion error

If you see an Android error mentioning `minSdkVersion`, you may need to update your `app.json` to set the `minSdkVersion` to a higher version.

Here's how to update the `minSdkVersion` in `app.json`:

```json
{
"expo": {
"plugins": [
"expo-build-properties",
{
"android": {
"minSdkVersion": 26
}
}
]
}
}
```

Make sure you have `expo-build-properties` added to your `package.json` dependencies.
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
async () => {
const fetchWithHeaders = getClientFetch(client);
const res = await fetchWithHeaders(
`${getPaySupportedDestinations()}?isTestMode=${isTestMode}`,
`${getPaySupportedDestinations()}${isTestMode ? "?isTestMode=true" : ""}`,

Check warning on line 45 in packages/thirdweb/src/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.ts

View check run for this annotation

Codecov / codecov/patch

packages/thirdweb/src/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.ts#L45

Added line #L45 was not covered by tests
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sneaked this one in - we were sending isTestMode=undefined

);
const data = (await res.json()) as Response;
return data.result.map((item) => ({
Expand Down