Only this pageAll pages
Powered by GitBook
1 of 20

Mobile News Apps public docs

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Naviga Mobile News Apps

Required information

This is the required initial information and actions to start app setup.

Note: The API Key can only be downloaded once.

No keys or certificates should be sent through insecure communications.

Feel free to use our secrets share service:

  • Name

Provide a name for the app

  • Bundle ID

Set up or provide existing bundle ID (unique identifier) for the app.

  • Meta data

Provide descriptions, support URL, Privacy policy URL and declarations

[email protected]
[email protected]
https://appstoreconnect.apple.com/access/api
https://secrets.saas.navigacloud.com/#/upload
https://play.google.com/console

Store information

Required and suggested information when publishing Naviga news apps on stores.

Configuration base

What info Naviga professional services need as a minimum to start a Mobile project.

Font

Preferred format is TrueType font format (ttf) for fonts.

As alternative, OpenType font format (otf) will most likely work. But otf will in some cases not render as good as ttf.

Color

At least one primary color code in hex format, 6 or 8 digits, is required.

Logotype

(and/or logomark)

Main app logotype in svg format, one black and one white.

They will be rescaled by Naviga to be used in multiple places. For example splash screen, appbar icon, toolbar and app icon.

Feature icons (optional)

Icons in svg format, square.

For use in bottom nav icons, actions i app bar. If not specified, Naviga standard will apply.

Ownership

When publishing News apps Google and Apple have some specific requirements to verify publisher ownership.

Suggestions and example how to configure your app and Google play.

Background

Privacy Policy

Google Play

Google Play > Policy > App content > Povacy policy

  • Paste url to policy

App information

There will likely be requirements for information inside the app. Here are a couple of examples that has been successfully published.

Ownership information in app, example 1
Ownership information in app, example 2

Google Play

Is your app a news app?

Ownership information on Google Play, example

Understanding upcoming changes to news and news-related apps (Google support)
Developer program policy (Google Play, January 20, 2021)
Color example
Logotype example
Feature icons example

Article Read Event

Stop showing article.

An event dispatched when an article has been read.

  • eventName - viewShow

  • viewName - articleRead

  • moduleID - Module ID from app config

  • moduleName - Module name

  • moduleTitle - Module title from app config

  • articleHeadline - Article's headline

  • articleUUID - Article's UUID

  • isFrequency - Boolean, whether article is metered

  • isPremium - Boolean, whether article is premium content

  • userHasAccess - Boolean, whether the user has access to article or not

Example - this event was dispatched when an article was read.

  • eventName: viewShow

  • viewName: articleRead

Profile Event

Show profile module

An event dispatched when profile module is opened.

  • eventName - viewShow

  • viewName - profile

  • moduleID - Module id from app config, or global

  • moduleName - Module name, or empty if omitted

  • moduleTitle - Module title from app config, or empty if omitted

  • eventName - viewShow

  • viewName - profile

  • moduleID - profile

Article Event

Show article.

An event dispatched when an article is opened.

  • eventName - viewShow

  • viewName - article or packagePreview

  • moduleID - Module ID from app config

  • moduleName - Module name

  • moduleTitle - Module title from app config

  • articleHeadline - Article headline

  • articleUUID - Article UUID

  • articleUrl - Article URL

  • isFrequency - Boolean, whether article is metered.

  • isPremium - Boolean, whether article is premium content.

  • source - String, if the article was opened from a push notification.

Example - Event dispatched when an article with title of "Title of an Amazing Article" is opened.

  • eventName: viewShow

  • viewName: article

ArticleList Event

Show ContentList module.

An event dispatched when a ContentList or NearMe module are rendered.

  • eventName - viewShow

  • viewName - articleList

moduleID: mynews
  • moduleName: NearMe

  • moduleTitle: My News

  • articleHeadline: Lilliz inte anmäld till disciplinnämnden

  • articleUUID: 1c5ee092-f5fd-48fa-b610-ee537d67a337

  • isFrequency: false

  • isPremium: true

  • userHasAccess: true

  • moduleName - MyProfile

  • moduleTitle - Profile

  • moduleID: topnews
  • moduleName: SectionContentList

  • moduleTitle: Top News

  • articleHeadline: Title of an Amazing Article

  • articleUUID: cc6bad82-1a84-4c65-bcc4-f8a551851c2d

  • articleUrl: Article's URL

  • isFrequency: false

  • isPremium: true

  • source:

  • moduleID - Module ID in app config

  • moduleName - Module name (ContentList or NearMe)

  • moduleTitle - Module title in app config

  • streamID - Concept UUID

  • streamType - Concept Open Content property name

  • streamTitle - Title of stream

  • Example - User navigates to the module called "Senaste nytt"

    • eventName - viewShow

    • viewName - articleList

    • moduleID - topnews

    • moduleName - ContentList

    • moduleTitle - Senaste nytt

    • streamID -

    • streamType -

    • streamTitle -

    Example - User opens the "My News" module and the concept stream "Example Town".

    • eventName - viewShow

    • viewName - articleList

    • moduleID - mynews

    • moduleName - NearMe

    • moduleTitle - My News

    • streamID - 3dcd84df-80b6-4a30-89d0-ca595c8584d3

    • streamType - ConceptTagUuids

    • streamTitle - Example Town

    Flow Event

    User, login, password and similar views.

    An event dispatched when a Flow view's registerStats property is true.

    • eventName - viewShow

    • viewName - flow

    • moduleID - Module id from app config, or global

    • moduleName - Module name, or empty if omitted

    • moduleTitle - Module title from app config, or empty if omitted

    • viewId - Flow ID or empty if omitted

    Example - Event dispatched during a custom User Login flow

    • eventName - viewShow

    • viewName - flow

    Example - Event dispactched during a custom Free Trial flow

    • eventName - viewShow

    • viewName - flow

    Example - Event dispactched during a custom Forgot Password flow

    • eventName - viewShow

    • viewName - flow

    ArticleListRow Event

    Show article teaser.

    An event dispatched when an article teaser is viewed in a list.

    • eventName - articleListRowView

    • viewName - article or packagePreview

    • moduleID - Module ID in app config

    • moduleName - Module name

    • moduleTitle - Module title in app config

    • articleHeadline - Article's headline

    • articleUUID - Article's UUID

    • isFrequency - Boolean, whether article is metered

    • isPremium - Boolean, whether article is premium content

    • userHasAccess - Boolean, whether the user has access to article or not

    • subscriptionId - Subscription UUID

    Example - event dispatched when an article teaser is viewed in a list

    • eventName: articleListRowView

    • viewName: article or packagePreview

    Onboarding Event

    Show onboarding view

    An event dispatched when an on-boarding slide is displayed.

    • eventName - viewShow

    • viewName - promotion

    Statistics Events

    All Apps dispatch statistics events via different Statistics Providers. Default is the Firebase Analytics integration (Google Analytics v4).

    For each action or view in the app an event is triggered. Those events has parameters, described on these sub pages.

    Global attributes

    The attributes of each event type may differ but each event also contains the following global attributes:

    moduleID - global
  • moduleName - SectionContentList

  • moduleTitle - Top News

  • viewId - login_flow

  • moduleID - global
  • moduleName - SectionContentList

  • moduleTitle - Top News

  • viewId - try1_flow

  • moduleID - global
  • moduleName - SectionContentList

  • moduleTitle - Top News

  • viewId - forgot_pasword_flow

  • moduleID: mynews

  • moduleName: NearMe

  • moduleTitle: My News

  • articleHeadline: Ineffektivt Färjestad föll i toppmötet

  • articleUUID: fc44ae40-c7b9-48a5-973c-3b1f2964e812

  • isFrequency: false

  • isPremium: true

  • userHasAccess: true

  • subscriptionId: 30d10286-79a6-43db-b46e-c7f3b120d394

  • moduleID - Module id from app config

  • moduleName - Module name

  • moduleTitle - Module title from app config

  • promotionId - Promotion id from app config

  • pageIndex - Promotion page index from app config (0,1,2,n)

  • Example - event dispatched when the first slide of the on-boarding is loaded.

    • eventName - viewShow

    • viewName - promotion

    • moduleID - topnews

    • moduleName - SectionContentList

    • moduleTitle - Top News

    • promotionId - topnews_1.0

    • pageIndex - 0

    userIsLoggedIn (iOS) - boolean, denotes a users login status on iOS
  • loggedIn (Android) - boolean, denotes a users login status on Android

  • userID - string, the unique identifer for a given user

  • appleAppTracking (iOS) - string, status of users consent with one of the following statuses: notDetermined, restricted, denied or authorized

  • TopicPicker Event

    Show the Add subscription view, and add subscription event

    View dialog

    Topic Picker View: An event dispatched when the topic picker is opened.

    • eventName - viewShow

    • viewName - topicPicker

    • moduleID - Module id from app config, or global

    • moduleName - Module name

    • moduleTitle - Module title from app config

    Example - User navigates to the module "Top News", and the topicPicker dialog appears.

    • eventName - viewShow

    • viewName - topicPicker

    Create subscription

    TopicPicker Create Subscription events are dispatched when a user saves their choices made in the topic picker.

    One event is dispatched for each choice that was made.

    • eventName - createStream

    • viewName - topicPicker

    • moduleID - Module ID from app config, or global

    moduleID - topnews
  • moduleName - SectionContentList

  • moduleTitle - Top News

  • moduleName - Module name

  • moduleTitle - Module title from app config

  • streamID - Concept uuid

  • streamType - Open Content property name for the Concept type

  • subscriptionName - Subscription UUID

  • Example - User follows the "Ice Hockey" concept, and saves their choice.

    • eventName - createStream

    • viewName - topicPicker

    • moduleID - mynews

    • moduleName - NearMe

    • moduleTitle - My News

    • streamID - 5b129691-a4e7-4318-9ced-c7344c54b2b0

    • streamType - AppConceptCategoryUuids

    • subscriptionName - Ice Hockey

    AppStore Privacy

    This is how Naviga suggest you enter privacy details when publishing a Naviga news app.

    Apple App Store

    This is how Naviga suggest you enter privacy details when publishing a Naviga news app for iOS.

    Read more:

    App privacy > Data collection

    App privacy > Advertising data

    App privacy > Crash data

    App privacy > Device ID

    App privacy > Product interaction

    App privacy > User ID

    App Store privacy details
    Naviga suggested settings for Data Collection
    Naviga suggested settings for Advertising data - step 1
    Naviga suggested settings for Advertising data - step 2
    Naviga suggested settings for Advertising data - step 3
    Naviga suggested settings for Crash data - step 1
    Naviga suggested settings for Crash data - step 2
    Naviga suggested settings for Crash data - step 3
    Naviga suggested settings for Device ID - step 1
    Naviga suggested settings for Device ID - step 2
    Naviga suggested settings for Device ID - step 3
    Naviga suggested settings for Product interaction - step 1
    Naviga suggested settings for Product interaction - step 2
    Naviga suggested settings for Product interaction - step 3
    Naviga suggested settings for User ID - step 1
    Naviga suggested settings for User ID - step 2
    Naviga suggested settings for User ID - step 3

    Notification Event

    Receive and open push notifications

    Receive notification

    Notification Received Event. An event dispatched when a push notification is received by a device registered for push notifications.

    • eventName - showNotification

    • viewName - empty if omitted

    • moduleID - Notification context

    • moduleName - Module name, or empty if omitted

    • moduleTitle - Module title in app config, or empty if omitted

    • streamID - Notification uuid

    • streamType - Open Content property name for the concept

    • streamTitle - Concept headline

    • notificationTitle - Notification alert title

    • notificationText - Notification alert body

    • contentID - Notification uuid

    • contentType - Linked contentType

    Example - The device receives a manual push notification with a link to open an article if clicked.

    • eventName - showNotification

    • viewName -

    Example - The device receives a manual push notification which does not contain a link to an article (or anything), and does not contain any module info.

    • eventName - showNotification

    • viewName -

    Example - The device receives a manual push notification for the Editions module about a new Edition.

    • eventName - showNotification

    • viewName -

    Example - The device receives an automatic push notification, from the NearMe module, with a link to an article.

    • eventName - showNotification

    • viewName -

    Open notification

    Notification Opened Event. An event dispatched when a push notification is opened.

    • eventName - openNotification

    • viewName - empty if omitted

    • moduleID - Notification context

    Google Play Data Safety

    Fast track:

    To skip the manual config, use the csv file below as a quickstart.

    CSV file contains below settings, for a Naviga Standard config Android app.

    169KB
    data_safety_export.csv
    Open

    Background

    Help users understand how your app collects and shares their data

    To help users better understand your app's privacy, security and data handling practices before they download it, provide information about your app's safety. The information that you provide is shown on your Store Listing so that users can learn how you collect and share their data.

    Manual guide: Google Play > Policy > App content

    2. Data collection and security

    3. Naviga Android apps collects or shares:

    Data type
    Purpose

    Optionals

    You might need to mark more, if customer app is using 3rd part tools or has addition config.

    Data type
    Purpose

    4. Data usage and handling

    Email address

    App info and performance: Crash logs, Diagnostics and Other app performance data

    App activity: App interactions

    Device or other IDs

    ​​​​

    ​​​​​​

    ​​​

    5. Preview

    Save!

    Deleting user data

    Naviga don't provide an end user interface for deleting data, we are a "ombud".

    moduleID - topnews
  • moduleName - ContentList

  • moduleTitle - Top News

  • streamID -

  • streamType -

  • streamTitle -

  • notificationTitle -

  • notificationText - Some title\nSome body text goes here

  • contentID - a67d3300-1fa0-4595-ac58-d223d217f12d

  • contentType - article

  • moduleID - global
  • moduleName -

  • moduleTitle -

  • streamID -

  • streamType -

  • streamTitle -

  • notificationTitle -

  • notificationText - Some title\nSome body text goes here

  • contentID -

  • contentType -

  • moduleID - editions
  • moduleName - ContentList

  • moduleTitle - Editions

  • streamID -

  • streamType -

  • streamTitle -

  • notificationTitle -

  • notificationText - Some title\nSome body text goes here

  • contentID - a67d3300-1fa0-4595-ac58-d223d217f12d

  • contentType - package

  • moduleID - mynews
  • moduleName - NearMe

  • moduleTitle - My News

  • streamID - 95d3e986-26b7-4b14-b436-8c79c8645412

  • streamType - ConceptCategoryUuids

  • streamTitle - Crime and Punishment

  • notificationTitle - Some title

  • notificationText -

  • contentID - a67d3300-1fa0-4595-ac58-d223d217f12d

  • contentType - article

  • moduleName - Module name, or empty if omitted

  • moduleTitle - Module title in app config, or empty if omitted

  • streamID - Notification uuid

  • streamType - Open Content property name for the Concept

  • streamTitle - Concept headline

  • notificationTitle - Notification alert title

  • notificationText - Notification alert body

  • contentID - Notification data body (?)

  • contentType - Linked contentType

  • Example - The device received an automatic push notification with an article. This event triggers when that notification is opened (clicked) and the article will open in a concept stream.

    • eventName - openNotification

    • viewName -

    • moduleID - mynews

    • moduleName - NearMe

    • moduleTitle - My News

    • streamID - a5c77d9c-6c4f-4dd7-860a-a155c568a9be

    • streamType - ConceptCategoryUuids

    • streamTitle - Example category

    • notificationTitle - Push notification's title

    • notificationText -

    • contentID - 329a8259-93e1-4eb0-bf50-6e73d8732b07 (article uuid)

    • contentType - article

    Example - The device received a manual push notification to open an article, and that notification was opened.

    • eventName - openNotification

    • viewName -

    • moduleID - mynews

    • moduleName - NearMe

    • moduleTitle - My News

    • streamID -

    • streamType -

    • streamTitle -

    • notificationTitle - Push notification's title

    • notificationText -

    • contentID - 329a8259-93e1-4eb0-bf50-6e73d8732b07 (article UUID)

    • contentType - article

    App activity

    App interactions are sent to statistics

    App info and performance

    Crash logs and diagnostics are sent to Firebase Crashlytics and Google Play.

    Device or other IDs

    Firebase installation ID is used by Firebase Crashlytics and statistics.

    Location

    Ads and statistics

    Personal info: Email

    Email used as key if provisioning is used in app.

    Personal info: User ID's

    User ID can be sent to statistics provider, if configured.

    Google Developer Program Policy
    This info is required from 20 July 2022
    https://play.google.com/console

    ImageViewer Event

    Show image

    An event dispatched when an image is loaded.

    • eventName - imageViewer

    • viewName - empty if omitted (?)

    • moduleID - Notification context (?)

    • moduleName - Module name. or empty if omitted

    • moduleTitle - Module title from app config, or empty if omitted

    • contentID - Notification uuid

    • contentType - Notification contentType

    • articleHeadline - The article's headline

    • articleUUID - The article's UUID

    • imageUUID - The image's UUID

    Example - an event dispatched when an image is opened

    • eventName - imageViewer

    • viewName -

    moduleID - editions
  • moduleName - SectionContentList

  • moduleTitle - Editions

  • contentID - 73328ee7-1bc4-4abd-b630-12b10579f796

  • contentType - {notification.data.contentType}

  • articleHeadline -

  • articleUUID -

  • imageUUID -

  • EditSubscriptionList Event

    Subscriptions settings events.

    Multiple user actions triggers these events, with different event names. All related to automatic push notifications and subscriptions.

    User action

    eventName

    Show the subscription settings view where user can edit subscriptions

    viewShow

    Remove a subscription

    deleteStream

    Enable push notifications for a subscription

    notificationsDeactivated

    Disable push notifications for a subscription

    • eventName - viewShow, deleteStream, notificationsDeactivated or notificationsActivated

    • viewName - editSubscriptionList

    moduleID - Module ID in app config

  • moduleName - NearMe

  • moduleTitle - Module title in app config

  • streamID - Concept uuid

  • streamType - Open Content property name for the Concept

  • streamTitle - Title of the stream

  • Example - User clicks on the settings cog in "My News" and is presented with settings dialog (edit view).

    • eventName - viewShow

    • viewName - editSubscriptionList

    • moduleID - mynews

    • moduleName - NearMe

    • moduleTitle - My News

    • streamID -

    • streamType -

    • streamTitle -

    Example - User removes a subscription e.g. Borås Basket

    • eventName - deleteStream

    • viewName - editSubscriptionList

    • moduleID - mynews

    • moduleName - NearMe

    • moduleTitle - My News

    • streamID - 2de1fe6c-0a44-49f0-8dde-b0937fbff529

    • streamType - ConceptTagUuids

    • streamTitle - BorÃ¥s Basket

    Example - User activates push notification for e.g. Family.

    • eventName - notificationsActivated

    • viewName - editSubscriptionList

    • moduleID - mynews

    • moduleName - NearMe

    • moduleTitle - My News

    • streamID - 31415cc9-b084-45a8-a716-72638c9669d4

    • streamType - ConceptCategoryUuids

    • streamTitle - Family

    Example - User deactivates push notification for e.g. Family.

    • eventName - notificationsDeactivated

    • viewName - editSubscriptionList

    • moduleID - mynews

    • moduleName - NearMe

    • moduleTitle - My News

    • streamID - 31415cc9-b084-45a8-a716-72638c9669d4

    • streamType - ConceptCategoryUuids

    • streamTitle - Family

    notificationsActivated