Skip to end of metadata
Go to start of metadata

Table of contents

 


Overview

The channel publishing flow includes a Static Analysis tool used to analyze the channel's BrightScript source code and detect common issues without having to submit for certification. This arm developers with the information they need to optimize their channels and ensure the channel passes certification quickly. These common issues include but are not limited to simple channel runtime issues, such as crashes on launch, and media playback errors (automated testing).

Developer Dashboard

The developer can access the Static Analysis tool from the Developer Dashboard.

  1. To use Static Analysis, first upload a channel package. Refer to Update an Existing Channel for the steps to uploading a package.
  2. After uploading the package, the developer can see a new Static Analyze feature in the drop-down (see below).



  3. Below is the Static Analysis dashboard setup. Click on Analyze to begin the Static Analysis of your channel



  4. The following screen indicates that the analysis is underway



    If the developer thinks the process is taking longer, they can click on the Refresh button to check for analysis results.

  5. Typically, the analysis results look like the following



    Alternatively, the developer can wait for a notification email sent by the service to the email address associated with their developer account. This email contains a link to the results of the Static Analysis for the channel.

Static Analysis Test Details

Following are the tests that Static Analysis performs on the channel package. These may be expanded over time.

  • Check for usage of the TimeGrid (EPG) component

    As this component is allowed on a case by case basis, we are checking for its usage in channels.
  • Check for breakpoints left in code

    Check for intentional stopping or pausing place in the code.
  • Check for potential PII queries

    Check for usage of terms like credit, card, age, gender, etc.
  • Extraneous file inclusion

    Channel scanned for files inadvertently packaged with ZIP files (such as the side loadable development app,) __MACOSX artifact folders, .pkg files, etc.
  • Deprecated manifest entries

    Channel scanned for usage of deprecated manifest flags as specified in the Roku Channel Manifest.
  • No labels