From b8ff509887c1a0aa24901223f3dd22ab5349f6a5 Mon Sep 17 00:00:00 2001 From: Fred Gylys-Colwell Date: Fri, 14 Sep 2012 14:03:37 -0700 Subject: [PATCH] Add More Logging to Sample Player Because the Widevine Sample Play is frequently used to report bugs, it is helpful to have users' actions logged. This change prints to the android log whenever the user changes settings, clicks play, full screen, acquire rights, etc. This code does not change the build and is not delivered to customers. It is delivered to vendors. Change-Id: I62c34c2f1683af881a3c326a48f039b463ca3e8e --- .../src/com/widevine/demo/AssetActivity.java | 6 ++++ .../com/widevine/demo/SettingsActivity.java | 5 +++ .../com/widevine/demo/VideoPlayerView.java | 34 ++++++++++++++----- .../src/com/widevine/demo/WidevineDrm.java | 4 +++ 4 files changed, 40 insertions(+), 9 deletions(-) diff --git a/proprietary/samplePlayer/src/com/widevine/demo/AssetActivity.java b/proprietary/samplePlayer/src/com/widevine/demo/AssetActivity.java index e76563fe..75bfe5dc 100644 --- a/proprietary/samplePlayer/src/com/widevine/demo/AssetActivity.java +++ b/proprietary/samplePlayer/src/com/widevine/demo/AssetActivity.java @@ -17,6 +17,7 @@ import android.graphics.BitmapFactory; import android.os.Bundle; import android.view.Gravity; import android.view.View; +import android.util.Log; import android.widget.ImageView; import android.widget.LinearLayout; @@ -25,6 +26,8 @@ import android.widget.Button; public abstract class AssetActivity extends Activity { + public static final String TAG = "WVM Sample Player"; + private int currentPage; protected ArrayList pages; private Context context; @@ -128,6 +131,7 @@ public abstract class AssetActivity extends Activity { public void onClick(View v) { currentPage++; + Log.d(TAG, "Click next page: " + currentPage); if (currentPage >= pages.size()) { currentPage = 0; } @@ -146,6 +150,7 @@ public abstract class AssetActivity extends Activity { public void onClick(View v) { currentPage--; + Log.d(TAG, "Click prev page: " + currentPage); if (currentPage < 0) { currentPage = pages.size() - 1; } @@ -211,6 +216,7 @@ public abstract class AssetActivity extends Activity { clip.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { + Log.d(TAG, "Click Asset path: " + assetPath); Intent intent = new Intent(context, VideoPlayerView.class); intent.putExtra("com.widevine.demo.Path", assetPath); context.startActivity(intent); diff --git a/proprietary/samplePlayer/src/com/widevine/demo/SettingsActivity.java b/proprietary/samplePlayer/src/com/widevine/demo/SettingsActivity.java index 48a1aeb6..0a4e743c 100644 --- a/proprietary/samplePlayer/src/com/widevine/demo/SettingsActivity.java +++ b/proprietary/samplePlayer/src/com/widevine/demo/SettingsActivity.java @@ -12,6 +12,7 @@ import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; +import android.util.Log; import android.content.Context; @@ -23,6 +24,8 @@ public class SettingsActivity extends Activity { private Button updateButton; private EditText drmServer, portalName, deviceId, contentPage; + public static final String TAG = "WVM Player Settings"; + @Override public void onCreate(Bundle savedInstanceState) { @@ -37,6 +40,7 @@ public class SettingsActivity extends Activity { View.OnClickListener clickListener = new View.OnClickListener() { public void onClick(View v) { + Log.d(TAG, "Click update settings"); WidevineDrm.Settings.DRM_SERVER_URI = drmServer.getText().toString(); WidevineDrm.Settings.DEVICE_ID = deviceId.getText().toString(); WidevineDrm.Settings.PORTAL_NAME = portalName.getText().toString(); @@ -46,6 +50,7 @@ public class SettingsActivity extends Activity { builder.setMessage("DRM Settings Updated").setCancelable(false) .setPositiveButton("Ok", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { + Log.d(TAG, "Click DRM Settings OK."); dialog.cancel(); } }); diff --git a/proprietary/samplePlayer/src/com/widevine/demo/VideoPlayerView.java b/proprietary/samplePlayer/src/com/widevine/demo/VideoPlayerView.java index 0b790378..f6929611 100644 --- a/proprietary/samplePlayer/src/com/widevine/demo/VideoPlayerView.java +++ b/proprietary/samplePlayer/src/com/widevine/demo/VideoPlayerView.java @@ -81,6 +81,7 @@ public class VideoPlayerView extends Activity { @Override protected void onStop() { + Log.d(TAG, "onStop."); if (videoView != null) { if (videoView.isPlaying()) { stopPlayback(); @@ -99,10 +100,10 @@ public class VideoPlayerView extends Activity { assetUri = this.getIntent().getStringExtra("com.widevine.demo.Path").replaceAll("wvplay", "http"); drm = new WidevineDrm(this); - drm.logBuffer.append("Asset Uri: " + assetUri + "\n"); - drm.logBuffer.append("Drm Server: " + WidevineDrm.Settings.DRM_SERVER_URI + "\n"); - drm.logBuffer.append("Device Id: " + WidevineDrm.Settings.DEVICE_ID + "\n"); - drm.logBuffer.append("Portal Name: " + WidevineDrm.Settings.PORTAL_NAME + "\n"); + logMessage("Asset Uri: " + assetUri + "\n"); + logMessage("Drm Server: " + WidevineDrm.Settings.DRM_SERVER_URI + "\n"); + logMessage("Device Id: " + WidevineDrm.Settings.DEVICE_ID + "\n"); + logMessage("Portal Name: " + WidevineDrm.Settings.PORTAL_NAME + "\n"); // Set log update listener WidevineDrm.WidevineDrmLogEventListener drmLogListener = @@ -161,8 +162,6 @@ public class VideoPlayerView extends Activity { view = videoView; } - - playerFrame.addView(view, new FrameLayout.LayoutParams( LinearLayout.LayoutParams.WRAP_CONTENT, FrameLayout.LayoutParams.MATCH_PARENT)); @@ -172,6 +171,7 @@ public class VideoPlayerView extends Activity { bgImage.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { + Log.d(TAG, "Click play (start playback)."); startPlayback(); } @@ -182,6 +182,7 @@ public class VideoPlayerView extends Activity { fullScreen.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { + Log.d(TAG, "Click full screen"); int currentPosition = videoView.getCurrentPosition(); videoView.setVisibility(View.INVISIBLE); if (fullScreen.getText().equals(FULLSCREEN)) { @@ -223,6 +224,7 @@ public class VideoPlayerView extends Activity { } private void startPlayback() { + logMessage("Playback start."); playButton.setText(R.string.stop); bgImage.setVisibility(View.GONE); @@ -242,7 +244,7 @@ public class VideoPlayerView extends Activity { videoView.setOnErrorListener(new OnErrorListener() { public boolean onError(MediaPlayer mp, int what, int extra) { - String message = "Unknown error"; + String message = "Unknown error: " + what; switch (what) { case MediaPlayer.MEDIA_ERROR_UNKNOWN: message = "Unable to play media"; @@ -254,7 +256,7 @@ public class VideoPlayerView extends Activity { message = "Invalid media"; break; } - drm.logBuffer.append(message + "\n"); + logMessage(message + "\n"); updateLogs(); bgImage.setVisibility(View.VISIBLE); @@ -264,6 +266,7 @@ public class VideoPlayerView extends Activity { videoView.setOnCompletionListener(new OnCompletionListener() { public void onCompletion(MediaPlayer mp) { + Log.d(TAG, "onCompletion."); stopPlayback(); } }); @@ -303,7 +306,7 @@ public class VideoPlayerView extends Activity { message = "Metadata update"; break; } - drm.logBuffer.append(message + "\n"); + logMessage(message + "\n"); updateLogs(); @@ -328,6 +331,7 @@ public class VideoPlayerView extends Activity { } private void stopPlayback() { + logMessage("Stop Playback."); playButton.setText(R.string.play); bgImage.setVisibility(View.VISIBLE); @@ -362,6 +366,7 @@ public class VideoPlayerView extends Activity { onStop(); useMediaCodec = (useMediaCodec) ? false : true; + Log.d(TAG, "Click media codec mode. useMediaCodec = "+useMediaCodec); contentView = createView(); if (drm.isProvisionedDevice()) { setContentView(contentView); @@ -377,6 +382,7 @@ public class VideoPlayerView extends Activity { playButton.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { + Log.d(TAG, "Click play"); Button b = (Button) v; if (b.getText().equals(PLAY)) { startPlayback(); @@ -392,6 +398,7 @@ public class VideoPlayerView extends Activity { rightsButton.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { + Log.d(TAG, "Click rights"); drm.acquireRights(assetUri); updateLogs(); } @@ -403,6 +410,7 @@ public class VideoPlayerView extends Activity { removeButton.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { + Log.d(TAG, "Click remove rights"); drm.removeRights(assetUri); updateLogs(); } @@ -414,6 +422,7 @@ public class VideoPlayerView extends Activity { checkButton.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { + Log.d(TAG, "Click check rights"); drm.showRights(assetUri); updateLogs(); } @@ -425,6 +434,7 @@ public class VideoPlayerView extends Activity { checkConstraints.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { + Log.d(TAG, "Click get constraints"); drm.getConstraints(assetUri); updateLogs(); @@ -470,4 +480,10 @@ public class VideoPlayerView extends Activity { Log.v("VideoPlayerView", "------------------- onPause ----------------"); onStop(); } + + private void logMessage(String message) { + Log.d(TAG, message); + drm.logBuffer.append(message); + } + } diff --git a/proprietary/samplePlayer/src/com/widevine/demo/WidevineDrm.java b/proprietary/samplePlayer/src/com/widevine/demo/WidevineDrm.java index 85c7a83e..0f672c46 100644 --- a/proprietary/samplePlayer/src/com/widevine/demo/WidevineDrm.java +++ b/proprietary/samplePlayer/src/com/widevine/demo/WidevineDrm.java @@ -8,6 +8,7 @@ import java.io.FileDescriptor; import java.io.FileInputStream; import java.util.EventListener; import java.util.Set; +import android.util.Log; import android.content.ContentValues; import android.content.Context; @@ -22,6 +23,8 @@ import android.drm.DrmStore; public class WidevineDrm { + public static final String TAG = "WVM Sample Player"; + interface WidevineDrmLogEventListener extends EventListener { public void logUpdated(); } @@ -304,6 +307,7 @@ public class WidevineDrm { } private void logMessage(String message) { + Log.d(TAG, message); logBuffer.append(message); if (logEventListener != null) {