Skip to content

Android: install Google Play apps via self-service #33058

@marko-lisica

Description

@marko-lisica

Goal

User story
As an IT admin,
I want to add Play Store apps to Fleet and make them available in self-service (managed Google Play)
so that I can whitelist apps for my end users.

Roadmap item

🤖 Manage BYOD Android: enforce OS settings and manage software in work profiles

Original requests

Context

Changes

Product

Engineering

  • Test plan is finalized
  • Feature guide changes: TODO

ℹ️  Please read this issue carefully and understand it. Pay special attention to UI wireframes, especially "dev notes".

QA

Risk assessment

  • Requires load testing: TODO
  • Risk level: Low / High TODO
  • Risk description: TODO

Test plan

Make sure to go through the list and consider all events that might be related to this story, so we catch edge cases earlier.

UI

  • Verify that on the Add software page, App Store (VPP) tab is renamed to App store and that the user can choose Apple and Android from a dropdown.
  • Verify that the user can add App Store apps in a new UI when Apple is selected from a dropdown.
  • Verify that the user can add a Google Play app on Add software > App store > Android, using the instructions in the UI form.
  • Verify that the user can only add an Android app to self-service (Play Store in work profile).
  • Verify if the user provides the wrong Application ID when adding an Android app, so that Fleet displays an error specified in Figma.
  • Verify that the user is redirected to the software title page with a flash notification after the Play Store app is successfully added to a team.
  • Verify that software title creation and merge work. If the app already exists and the user adds the app with the same Application ID, the app is added to that title.
  • Verify that the App Store icon is changed and the Play Store icon is added as specified in Figma.
  • Verify that the name of the added app matches the Play Store name.
  • Verify that the icon of the added app matches the Play Store icon.
  • Verify that the edit icon is not available for Android app.
  • Make sure that the user can override the Android app icon the same way as for VPP apps.
  • Make sure that the user can change the display name for the Android app the same way as for VPP apps. NOTE: This will be done in the same sprint (Set custom display name for software #31354).
  • Verify that if the app is marked as self-service, it shows as optional in Play Store app in the work profile.
  • Make sure that the app shows "Installed" status on Host > Software > Library page if it's installed by the end user (via self-service Play Store).
  • Make sure that when users add or delete Android app activities specified in Figma, they show up.
  • Add Android Play Store app to a team, with self-service checked, and verify that the app shows up on work profile > Play Store. Then install it manually on the host details page and verify that it's installed on the work profile. Remove it from the work profile as an end user and verify that it's still available for install in the Play Store.

API

  • Verify that the user can add an Android app with an existing POST /api/v1/fleet/software/app_store_apps endpoint.
  • Verify that the user can modify an Android app with an existing PATCH /api/v1/fleet/software/titles/:title_id/app_store_app endpoint.
  • Verify that the user sees errors when adding an invalid app_store_id. Errors specified in this PR.

Testing notes

Confirmation

  1. Engineer: Added comment to user story confirming successful completion of test plan.
  2. QA: Added comment to user story confirming successful completion of test plan.

Sub-issues

Metadata

Metadata

Assignees

Labels

#g-softwareSoftware product group:releaseReady to write code. Scheduled in a release. See "Making changes" in handbook.customer-pingalistoryA user story defining an entire feature~customer promiseA feature request, or user story for a request, that Fleet has contractually agreed to deliver

Type

No type

Projects

Status

🥚 Ready

Status

No status

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions