Utilisation des règles de livraison avec les SDK natifs

Dans cette rubrique, vous apprendrez comment utiliser les règles de livraison de Brightcove avec les kits SDK natifs.

Introduction

Les règles de livraison de Brightcove vous permettent de tirer parti de la capacité de génération de manifestes juste à temps pour utiliser des règles personnalisées afin de contrôler la manière dont votre contenu est livré au spectateur.

Pour plus de détails sur les règles de livraison, consultez ce qui suit :

Implémentation Android

Pour utiliser les règles de livraison avec le SDK natif pour Android, procédez comme suit :

  1. Définissez le paramètre de votre ID de règles de livraison.
  2. Créer le HttpRequestConfig avec la règle de livraison que vous souhaitez appliquer. Passez une valeur de chaîne pour votre config_id, à l'aide du HttpRequestConfig.KEY_DELIVERY_RULE_CONFIG_ID paramètre.
  3. Transmettez l'ID des règles de livraison en tant que paramètre avec l'appel de catalogue à l'API Playback. Vous pouvez utiliser soit le findVideoByID ou findPlaylistByID méthodes. Voici le code :

    public class MainActivity extends BrightcovePlayer {
    
        private final String TAG = this.getClass().getSimpleName();
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            // Assign the brightcoveVideoView before entering the superclass.
            // This allows for video player lifecycle management.
            setContentView(R.layout.activity_main);
            brightcoveVideoView = (BrightcoveExoPlayerVideoView) findViewById(R.id.brightcove_video_view);
            super.onCreate(savedInstanceState);
    
            // Get the event emitter from the SDK for notifications and logging
            EventEmitter eventEmitter = brightcoveVideoView.getEventEmitter();
    
            // Create a catalog request to retrieve a video from your Video Cloud library
            Catalog catalog = new Catalog(eventEmitter,
                    getString(R.string.account),
                    getString(R.string.policy));
    
            // Create HttpRequestConfig with the delivery rule you want to be applied.
            // Use the HttpRequestConfig.KEY_DELIVERY_RULE_CONFIG_ID with a String value for config_id
            HttpRequestConfig httpRequestConfig = new HttpRequestConfig.Builder()
                    .addQueryParameter(HttpRequestConfig.KEY_DELIVERY_RULE_CONFIG_ID, "your rules id")
                    .build();
    
            // Add the HttpRequestConfig to the catalog request.
            catalog.findVideoByID(getString(R.string.videoId), httpRequestConfig, new VideoListener() {
    
                // Add the video found to the queue with add().
                // Start playback of the video with start().
                @Override
                public void onVideo(Video video) {
                    Log.v(TAG, "onVideo: video = " + video);
                    brightcoveVideoView.add(video);
                    brightcoveVideoView.start();
                }
            });
        }
    }

Implémentation iOS

Pour utiliser les règles de livraison avec le SDK natif pour iOS, procédez comme suit :

  1. Définissez le paramètre de votre ID de règles de livraison.
  2. Transmettez l'ID des règles de livraison en tant que paramètre avec l'appel de catalogue à l'API Playback. Vous pouvez utiliser soit le findVideoWithVideoID ou findPlaylistWithPlaylistID méthodes. Voici le code :

    - (void)requestContentFromPlaybackService
    {
        NSDictionary *playbackAPIParameters = @{@"config_id":@"your rules id"};
        [self.playbackService findVideoWithVideoID:kViewControllerVideoID
            parameters:playbackAPIParameters
            completion:^(BCOVVideo *video, NSDictionary *jsonResponse, NSError *error) {
    
            if (video)
            {
                [self.playbackController setVideos:@[ video ]];
            }
            else
            {
                NSLog(@"ViewController Debug - Error retrieving video playlist: `%@`", error);
            }
        }];
    }