Everything Personyze does on your website — targeted banners, popups, inline messages, A/B tests — can also run inside your native iOS or Android app. The targeting is identical: the same audience rules, the same visitor profiles, the same data. What changes is delivery. There is no browser to inject HTML into, so content reaches the app through the Personyze SDK and your app renders it.
This is an SDK integration, not a point-and-click campaign. A developer wires up the SDK once; after that, campaigns are created and targeted in the panel with no further code.
In the panel: New campaign › App / API › Targeting & Personalization for Apps.
How it works
- The SDK is installed once in your app and initialised with your API key.
- The app reports where the user is — screen views and events — through SDK calls. This is what builds the profile that targeting runs against.
- Personyze decides what to show, using your audience rules, exactly as it does on web.
- Your app renders the result: HTML in a WebView, or JSON laid out with native components.
Because the profile is shared with the website, someone who browsed a category on your site is already known when they open the app.
Installing the SDK
Your API key is on the Settings › Integrations page of the panel — use the key from the Full-featured API section.
Android
Clone or download the Personyze Android SDK and place the personyzeandroidsdk directory in your project root.
In settings.gradle:
include ':app', ':personyzeandroidsdk'
In app/build.gradle:
implementation project(path: ':personyzeandroidsdk')
In your manifest:
<uses-permission android:name="android.permission.INTERNET" />
Then initialise early, in your Application class:
PersonyzeTracker.inst.initialize(this, "YOUR_API_KEY");
PersonyzeTracker.inst.navigate("MainActivity");
PersonyzeTracker.inst.done();
iOS
Download the Personyze iOS SDK archive, extract it, and drag PersonyzeIosSdk.swift into your Xcode project navigator.
do
{ let tracker = try PersonyzeTracker(apiKey: "YOUR_API_KEY")
tracker.navigate(documentName: "ViewController")
tracker.done()
}
catch
{ print(error)
}
Confirming it works
Once initialised, open the app and check Real time visitors in the panel. If your session appears there, the SDK is talking to Personyze and you can build campaigns against it. If it does not, nothing downstream will work — fix this before going further.
Full SDK reference, including the tracker, condition and action classes, is in the developer documentation.
The campaign steps
Four steps: Set up, Target, Content and Performance.
Note there is no QA step on app campaigns. The on-site preview and simulator tools cannot drive a native app, so validation happens in a build of your app rather than in the panel — see below.
1. Set up
Confirms the SDK is installed and links to the platform guides above. Nothing to configure here beyond having done the integration.
2. Target
The same audience rules as web: behaviour, profile and CRM fields, interests, geography, session context. What the app reports through navigate() and its event calls is what these rules can see, so the granularity of your targeting follows the granularity of your instrumentation.
3. Content
What to show. For apps this is usually one of two shapes:
- HTML — rendered in a WebView. Fastest to build, and marketers can change it without an app release.
- JSON — Personyze returns structured data and you lay it out with native components. More work up front, and the result looks and feels native.
4. Performance
Live results once the campaign is running.
Validating without a QA step
Because there is no in-panel QA, test in a build:
- Confirm your device shows up in Real time visitors.
- Temporarily widen the audience so it certainly matches you, and check the content arrives.
- Narrow the rules back and confirm it stops arriving.
That third step is the one people skip, and it is the one that catches a rule that matches everybody.