diff --git a/sample/advanced/app/src/main/java/com/inka/ncgsample/MainActivity.java b/sample/advanced/app/src/main/java/com/inka/ncgsample/MainActivity.java index e042ddf..35442f5 100644 --- a/sample/advanced/app/src/main/java/com/inka/ncgsample/MainActivity.java +++ b/sample/advanced/app/src/main/java/com/inka/ncgsample/MainActivity.java @@ -1059,7 +1059,7 @@ void startImageActivity() { void startHlsPlayerActivity(String localM3U8Path) { String contentPath; boolean isLocalM3U8; - if (localM3U8Path.startsWith("http")) { + if (localM3U8Path.startsWith("http://") || localM3U8Path.startsWith("https://")) { contentPath = mGlobal.mNcgFilePath; isLocalM3U8 = false; } else { @@ -1173,23 +1173,15 @@ class ListViewItem { public CustomAdapter() { mListViewItems.add( new ListViewItem(ListItemType.Title, "Download")); mListViewItems.add( new ListViewItem(ListItemType.Download, - "https://contents.pallycon.com/TEST/PACKAGED_CONTENT/TEST_SIMPLE/sintel-trailer.mp4.ncg", - "eyJrZXlfcm90YXRpb24iOmZhbHNlLCJyZXNwb25zZV9mb3JtYXQiOiJvcmlnaW5hbCIsInVzZXJfaWQiOiJ1dGVzdCIsImRybV90eXBlIjoibmNnIiwic2l0ZV9pZCI6IkRFTU8iLCJoYXNoIjoicE1DUXFldzFZeGk4WXJDYlJlQnNzM0IwYUI0T3hBVER1UmdZaVRVXC8zbVk9IiwiY2lkIjoiVGVzdFJ1bm5lciIsInBvbGljeSI6IjlXcUlXa2RocHhWR0s4UFNJWWNuSnNjdnVBOXN4Z3ViTHNkK2FqdVwvYm9tUVpQYnFJK3hhZVlmUW9jY2t2dUVmdUx0dlVMWXEwTnVoNVJaOFhGYzQ1RWxHd1dcLzY3WVhUcTJQSDJ4Z3dIR1hDalVuaUgzbDQ4NVNmcDZjbmV1bm5qdjMxeGt5VHd6VlAzdVhIUGJWNWR3PT0iLCJ0aW1lc3RhbXAiOiIyMDIwLTExLTIwVDA0OjE2OjI1WiJ9", + "https://contents.pallycon.com/DEV/yhpark/ncg/TestRunner/llama.mp4.ncg", + "eyJrZXlfcm90YXRpb24iOmZhbHNlLCJyZXNwb25zZV9mb3JtYXQiOiJvcmlnaW5hbCIsInVzZXJfaWQiOiJ1dGVzdCIsImRybV90eXBlIjoibmNnIiwic2l0ZV9pZCI6IkRFTU8iLCJoYXNoIjoiQUt1YnhnRTB6czNteXdjT1pPb3pjWDV0c3hacG43anFKNUo2ZHp4MXliMD0iLCJjaWQiOiJUZXN0UnVubmVyIiwicG9saWN5IjoiOVdxSVdrZGhweFZHSzhQU0lZY25Kc2N2dUE5c3hndWJMc2QrYWp1XC9ib21RWlBicUkreGFlWWZRb2Nja3Z1RWZBYXFkVzVoWGdKTmdjU1MzZlM3bzhNcXNINTBRZTVVUzNFMXp1T0M5M0pQVXVJOW9CQUl1aEdVVDBZRnFcL3pONjdEc3AwdGtkXC9NS3JBT3NYUDZtWVFwZjkrTDY1VmI0QnlBbG9DbDltdlFlWXJYXC96U1RnaTlXZXVyejl0QVoxTFpjenYzSzF3XC9GeXJpbU5FNjl4WFhiT29oa1Q2V3E3N0VuWW5rd1FxK3ZsdmlZS3FHQ1N6M3N2aWhnWHhybzF0IiwidGltZXN0YW1wIjoiMjAyMi0wOC0wMlQwOTowODoyM1oifQ==", "Sintel Trailer")); - mListViewItems.add( new ListViewItem(ListItemType.Download, - "https://contents.pallycon.com/DEV/yhpark/ncg/ncg-django/django.mp4.ncg", - "eyJrZXlfcm90YXRpb24iOmZhbHNlLCJyZXNwb25zZV9mb3JtYXQiOiJvcmlnaW5hbCIsInVzZXJfaWQiOiJ1dGVzdCIsImRybV90eXBlIjoibmNnIiwic2l0ZV9pZCI6IkRFTU8iLCJoYXNoIjoiVnJIY1FHMnVBT1FYNTlwSVg4aEFCQlJJQmFmSXoweXU4bGx5NFIxa0xKVT0iLCJjaWQiOiJuY2ctZGphbmdvIiwicG9saWN5IjoiOVdxSVdrZGhweFZHSzhQU0lZY25Kc2N2dUE5c3hndWJMc2QrYWp1XC9ib21RWlBicUkreGFlWWZRb2Nja3Z1RWZ4RGNjbTdjV2RWWHFyZE1nQVFqbXFmVVhja1doNEgwNGFMODlUa0hKOXUxWjJTUUlhSWFUXC9rd09JUFQyaWZMN2NkK0pBK2l0clpzaHNqbXpxR0R6NWVzOVhtbk0rWktUNnF4WUtOM2o0ekV3WURvTHlBeUhTZzVvN3BVQjVZa1YiLCJ0aW1lc3RhbXAiOiIyMDIyLTAxLTE4VDEyOjIwOjQ1WiJ9", - "ncg-django")); mListViewItems.add( new ListViewItem(ListItemType.Title, "ProgressiveDownload") ); mListViewItems.add( new ListViewItem(ListItemType.PD, - "https://contents.pallycon.com/TEST/PACKAGED_CONTENT/TEST_SIMPLE/sintel-trailer.mp4.ncg", - "eyJrZXlfcm90YXRpb24iOmZhbHNlLCJyZXNwb25zZV9mb3JtYXQiOiJvcmlnaW5hbCIsInVzZXJfaWQiOiJ1dGVzdCIsImRybV90eXBlIjoibmNnIiwic2l0ZV9pZCI6IkRFTU8iLCJoYXNoIjoicE1DUXFldzFZeGk4WXJDYlJlQnNzM0IwYUI0T3hBVER1UmdZaVRVXC8zbVk9IiwiY2lkIjoiVGVzdFJ1bm5lciIsInBvbGljeSI6IjlXcUlXa2RocHhWR0s4UFNJWWNuSnNjdnVBOXN4Z3ViTHNkK2FqdVwvYm9tUVpQYnFJK3hhZVlmUW9jY2t2dUVmdUx0dlVMWXEwTnVoNVJaOFhGYzQ1RWxHd1dcLzY3WVhUcTJQSDJ4Z3dIR1hDalVuaUgzbDQ4NVNmcDZjbmV1bm5qdjMxeGt5VHd6VlAzdVhIUGJWNWR3PT0iLCJ0aW1lc3RhbXAiOiIyMDIwLTExLTIwVDA0OjE2OjI1WiJ9", + "https://contents.pallycon.com/DEV/yhpark/ncg/TestRunner/llama.mp4.ncg", + "eyJrZXlfcm90YXRpb24iOmZhbHNlLCJyZXNwb25zZV9mb3JtYXQiOiJvcmlnaW5hbCIsInVzZXJfaWQiOiJ1dGVzdCIsImRybV90eXBlIjoibmNnIiwic2l0ZV9pZCI6IkRFTU8iLCJoYXNoIjoiQUt1YnhnRTB6czNteXdjT1pPb3pjWDV0c3hacG43anFKNUo2ZHp4MXliMD0iLCJjaWQiOiJUZXN0UnVubmVyIiwicG9saWN5IjoiOVdxSVdrZGhweFZHSzhQU0lZY25Kc2N2dUE5c3hndWJMc2QrYWp1XC9ib21RWlBicUkreGFlWWZRb2Nja3Z1RWZBYXFkVzVoWGdKTmdjU1MzZlM3bzhNcXNINTBRZTVVUzNFMXp1T0M5M0pQVXVJOW9CQUl1aEdVVDBZRnFcL3pONjdEc3AwdGtkXC9NS3JBT3NYUDZtWVFwZjkrTDY1VmI0QnlBbG9DbDltdlFlWXJYXC96U1RnaTlXZXVyejl0QVoxTFpjenYzSzF3XC9GeXJpbU5FNjl4WFhiT29oa1Q2V3E3N0VuWW5rd1FxK3ZsdmlZS3FHQ1N6M3N2aWhnWHhybzF0IiwidGltZXN0YW1wIjoiMjAyMi0wOC0wMlQwOTowODoyM1oifQ==", "Sintel Trailer")); - mListViewItems.add( new ListViewItem(ListItemType.PD, - "https://contents.pallycon.com/DEV/yhpark/ncg/ncg-django/django.mp4.ncg", - "eyJrZXlfcm90YXRpb24iOmZhbHNlLCJyZXNwb25zZV9mb3JtYXQiOiJvcmlnaW5hbCIsInVzZXJfaWQiOiJ1dGVzdCIsImRybV90eXBlIjoibmNnIiwic2l0ZV9pZCI6IkRFTU8iLCJoYXNoIjoiVnJIY1FHMnVBT1FYNTlwSVg4aEFCQlJJQmFmSXoweXU4bGx5NFIxa0xKVT0iLCJjaWQiOiJuY2ctZGphbmdvIiwicG9saWN5IjoiOVdxSVdrZGhweFZHSzhQU0lZY25Kc2N2dUE5c3hndWJMc2QrYWp1XC9ib21RWlBicUkreGFlWWZRb2Nja3Z1RWZ4RGNjbTdjV2RWWHFyZE1nQVFqbXFmVVhja1doNEgwNGFMODlUa0hKOXUxWjJTUUlhSWFUXC9rd09JUFQyaWZMN2NkK0pBK2l0clpzaHNqbXpxR0R6NWVzOVhtbk0rWktUNnF4WUtOM2o0ekV3WURvTHlBeUhTZzVvN3BVQjVZa1YiLCJ0aW1lc3RhbXAiOiIyMDIyLTAxLTE4VDEyOjIwOjQ1WiJ9", - "ncg-django")); mListViewItems.add( new ListViewItem(ListItemType.Title, "Http Live Streaming") ); mListViewItems.add( new ListViewItem(ListItemType.HLS, diff --git a/sample/advanced/app/src/main/java/com/inka/ncgsample/Ncg2SdkWrapper.java b/sample/advanced/app/src/main/java/com/inka/ncgsample/Ncg2SdkWrapper.java index f123b84..22f9ee7 100644 --- a/sample/advanced/app/src/main/java/com/inka/ncgsample/Ncg2SdkWrapper.java +++ b/sample/advanced/app/src/main/java/com/inka/ncgsample/Ncg2SdkWrapper.java @@ -91,9 +91,8 @@ public boolean init(Context context, Ncg2SdkWrapperListener listener) { OfflineSupportPolicy policy = OfflineSupportPolicy.OfflineSupport; policy.setCountOfExecutionLimit(0); try { -// mNcg2Agent.init(context, policy); - mNcg2Agent.init(context, policy, null, null, "DRM", true); -// mNcg2Agent.setHttpRequestCallback(mHttpRequestCallback ); + mNcg2Agent.init(context, policy); + mNcg2Agent.setHttpRequestCallback(mHttpRequestCallback ); //mNcg2Agent.disableLog(); } catch (Ncg2FatalException e) { e.printStackTrace(); @@ -227,7 +226,7 @@ public String getPlaybackUrl(String contentPath, String remotePath, long fileSiz // // Non-DRM Content // - if( contentPath.startsWith("http://") ) { + if( contentPath.startsWith("http://") || contentPath.startsWith("https://") ) { playbackURL = contentPath; } else { @@ -251,7 +250,7 @@ public String getPlaybackUrl(String contentPath, String remotePath, long fileSiz if( contentPath.contains(".m3u8") ) { // HLS content playbackURL = ncgLocalWebServer.addHttpLiveStreamUrlForPlayback(contentPath); - } else if(contentPath.startsWith("http://")) { + } else if(contentPath.startsWith("http://") || contentPath.startsWith("https://")) { // PD content playbackURL = ncgLocalWebServer.addProgressiveDownloadUrlForPlayback(contentPath); } else { @@ -422,15 +421,14 @@ protected void onPostExecute(Void result) { protected Void doInBackground(Void... params) { try { boolean isTemporaryLicense; - if( mUrl.startsWith("http://") ) { + if( mUrl.startsWith("http://") || mUrl.startsWith("https://") ) { // 스트리밍 라이선스인 경우. isTemporaryLicense = true; } else { isTemporaryLicense = false; } -// mNcg2Agent.acquireLicenseByToken(mToken, isTemporaryLicense); - mNcg2Agent.acquireLicenseByToken(mToken, "https://testtokyo.pallycon.com/ri/licenseManager.do", isTemporaryLicense); + mNcg2Agent.acquireLicenseByToken(mToken, isTemporaryLicense); mIsSucceeded = true; } catch(final Ncg2HttpException e) { @@ -495,7 +493,7 @@ protected void onPostExecute(Void result) { protected Void doInBackground(Void... params) { try { boolean isTemporaryLicense; - if( mFilePath.startsWith("http://") ) { + if( mFilePath.startsWith("http://") || mFilePath.startsWith("https://") ) { // 스트리밍 라이선스인 경우. isTemporaryLicense = true; } diff --git a/sample/simple/app/src/main/java/com/inka/simple/sample/MainActivity.java b/sample/simple/app/src/main/java/com/inka/simple/sample/MainActivity.java index c4c80fb..6487262 100644 --- a/sample/simple/app/src/main/java/com/inka/simple/sample/MainActivity.java +++ b/sample/simple/app/src/main/java/com/inka/simple/sample/MainActivity.java @@ -50,10 +50,8 @@ public class MainActivity extends AppCompatActivity { private String userAgent; // TODO : set content information. -// private String contentUrl = "https://contents.pallycon.com/TEST/PACKAGED_CONTENT/TEST_SIMPLE/sintel-trailer.mp4.ncg"; -// private String token = "eyJrZXlfcm90YXRpb24iOmZhbHNlLCJyZXNwb25zZV9mb3JtYXQiOiJvcmlnaW5hbCIsInVzZXJfaWQiOiJ1dGVzdCIsImRybV90eXBlIjoibmNnIiwic2l0ZV9pZCI6IkRFTU8iLCJoYXNoIjoiXC9zUXA5YmpkTjA1NXJVQm5YdFhVUGlLWER0S0pYY3dydjdmSms5OThkUUU9IiwiY2lkIjoiVGVzdFJ1bm5lciIsInBvbGljeSI6IjlXcUlXa2RocHhWR0s4UFNJWWNuSnNjdnVBOXN4Z3ViTHNkK2FqdVwvYm9tUVpQYnFJK3hhZVlmUW9jY2t2dUVmdUx0dlVMWXEwTnVoNVJaOFhGYzQ1RWxHd1dcLzY3WVhUcTJQSDJ4Z3dIR1hDalVuaUgzbDQ4NVNmcDZjbmV1bm5qdjMxeGt5VHd6VlAzdVhIUGJWNWR3PT0iLCJ0aW1lc3RhbXAiOiIyMDIwLTExLTIwVDE1OjUwOjQyWiJ9"; - private String contentUrl = "https://contents.pallycon.com/DEV/yhpark/ncg/ncg-hls-django-drm/hls_ncg/master.m3u8"; - private String token = "eyJrZXlfcm90YXRpb24iOmZhbHNlLCJyZXNwb25zZV9mb3JtYXQiOiJjdXN0b20iLCJ1c2VyX2lkIjoidXRlc3QiLCJkcm1fdHlwZSI6Im5jZyIsInNpdGVfaWQiOiJERU1PIiwiaGFzaCI6InZNNVdKN3NYcnFZclFsXC81MDFyejZjNkxcL1htNXB3RkVPUUdteWRVUFdWTT0iLCJjaWQiOiJuY2ctaGxzLWRqYW5nby1kcm0iLCJwb2xpY3kiOiI5V3FJV2tkaHB4VkdLOFBTSVljbkpzY3Z1QTlzeGd1YkxzZCthanVcL2JvbVFaUGJxSSt4YWVZZlFvY2NrdnVFZkFhcWRXNWhYZ0pOZ2NTUzNmUzdvOE5zandzempNdXZ0KzBRekxrWlZWTm14MGtlZk9lMndDczJUSVRnZFU0QnZOOWFiaGQwclFrTUlybW9JZW9KSHFJZUhjUnZWZjZUMTRSbVRBREVwQ1k3UEhmUGZcL1ZGWVwvVmJYdXhYXC9XVHRWU0ZKU0g5c3hwd1FJUVhyNUI2UitBYWFmU2ZWWFNLazRtVkZsZTJQXC9wcmpoNTgrYk9oYnRVNDQ0bHg5b3JlRzUiLCJ0aW1lc3RhbXAiOiIyMDIzLTAyLTIwVDA1OjUwOjU2WiJ9"; + private String contentUrl = "https://contents.pallycon.com/DEV/yhpark/ncg/TestRunner/llama.mp4.ncg"; + private String token = "eyJrZXlfcm90YXRpb24iOmZhbHNlLCJyZXNwb25zZV9mb3JtYXQiOiJvcmlnaW5hbCIsInVzZXJfaWQiOiJ1dGVzdCIsImRybV90eXBlIjoibmNnIiwic2l0ZV9pZCI6IkRFTU8iLCJoYXNoIjoiQUt1YnhnRTB6czNteXdjT1pPb3pjWDV0c3hacG43anFKNUo2ZHp4MXliMD0iLCJjaWQiOiJUZXN0UnVubmVyIiwicG9saWN5IjoiOVdxSVdrZGhweFZHSzhQU0lZY25Kc2N2dUE5c3hndWJMc2QrYWp1XC9ib21RWlBicUkreGFlWWZRb2Nja3Z1RWZBYXFkVzVoWGdKTmdjU1MzZlM3bzhNcXNINTBRZTVVUzNFMXp1T0M5M0pQVXVJOW9CQUl1aEdVVDBZRnFcL3pONjdEc3AwdGtkXC9NS3JBT3NYUDZtWVFwZjkrTDY1VmI0QnlBbG9DbDltdlFlWXJYXC96U1RnaTlXZXVyejl0QVoxTFpjenYzSzF3XC9GeXJpbU5FNjl4WFhiT29oa1Q2V3E3N0VuWW5rd1FxK3ZsdmlZS3FHQ1N6M3N2aWhnWHhybzF0IiwidGltZXN0YW1wIjoiMjAyMi0wOC0wMlQwOTowODoyM1oifQ=="; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -103,10 +101,10 @@ private void initializePlayer() { // TODO 3. get playback url. start = System.currentTimeMillis(); Ncg2LocalWebServer localWebServer = ncg2Agent.getLocalWebServer(); - playbackUrl = localWebServer.addHttpLiveStreamUrlForPlayback(contentUrl); + playbackUrl = localWebServer.addProgressiveDownloadUrlForPlayback(contentUrl); end = System.currentTimeMillis(); time = end-start; - Log.d("PALLYCON", String.format("addHttpLiveStreamUrlForPlayback %d", time)); + Log.d("PALLYCON", String.format("addProgressiveDownloadUrlForPlayback %d", time)); } catch (Ncg2Exception e) {