Native Android
Portal provides MPC wallets and dApp connections for organizations and their users.
To integrate Portal, an organization adds a client library to their mobile app and a few server API endpoints.

The Portal library connects your mobile app and server with the web3 ecosystem.
- 1.In Android Studio, create a new Module within your project.
- 2.Name this module
portal-android
- 3.Paste the contents of the
portal-android
directory in theportal-android
Github repo - 4.Update the dependencies in your
build.gradle
to include the:portal-android
dependency
...
dependencies {
...
implementation project(':portal-android')
}
Reach out to Portal to get added to our private repo.
After you update your
build.gradle
file, you must sync gradle and you're ready to import Portal into an Activity of your choice.
With the
Portal Android
dependency now installed, we can now create an instance of the Portal
class. Below is an example of how you can do this. In this example, we're using your app's MainActivity
.package io.portal.android.app
import io.portal.android.Portal
import io.portal.android.storage.cloud.google.GoogleStorage
import io.portal.android.storage.mobile.Keychain
class MainActivity : AppCompatActivity() {
lateinit val portal: Portal
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// Initialize your Portal instance.
portal = Portal(
// A Portal client API key. You can obtain one from Portal's REST API.
CLIENT_API_KEY,
// 👇 Don't forget to replace below with your own Google Client ID.
GoogleStorage(YOUR_GOOGLE_CLIENT_ID, this),
// The EVM network chain ID. (5 = Goerli)
5,
// An instance of Portal's Keychain.
Keychain(applicationContext),
// A map of chainIDs to Gateway URLs (e.g. Infura, Alchemy, etc.)
mapOf(5 to YOUR_GATEWAY_URL),
//Preconfigured Portal Version Number
v1,
// A boolean to auto-approve transactions.
true,
)
}
}
Now that we have our Portal instance, the next step is to generate a wallet. Let's create one!
Last modified 1mo ago