| | |
| | | package com.sandu.ximon.admin.newnova.utils; |
| | | |
| | | import com.sun.jna.Native; |
| | | |
| | | /* |
| | | * 使用前阅读: |
| | | * 1 关于可能发生的搜索不到T卡的原因: |
| | | * 1.1. 打开了express,导致udp端口被占用,请关闭express软件后重试 |
| | | * 1.2. SDK和T卡不在同一个局域网,可以尝试指定ip搜索,使用方法见:https://docapi.vnnox.com/web/#/7?page_id=609 |
| | | |
| | | * 2 关于使用sdk动态库可能出现的问题及解决方法: |
| | | * |
| | | * 2.1. 在linux下如果出现lib***.so file too short ,这种错误,有可能是软连接失效,可以尝试删除原有文件,尝试 ln -s 重新生成软连接。比如: ./libcurl.so: file too short,首先 rm libcurl.so,然后ln -s libcurl.so.4.3.0 libcurl.so即可。 |
| | | * 2.2. 针对java项目,使用JNA加载so库时,请使用绝对路径。比如: |
| | | * //winodws |
| | | * ViplexCore instance = (ViplexCore) Native.loadLibrary("D:\\ViplexCore3.3.0.01_x64\\bin\\viplexcore.dll",ViplexCore.class); |
| | | * //或者 linux |
| | | * ViplexCore instance = (ViplexCore) Native.loadLibrary("home/user/desktop/ViplexCore_3.3.0.01_CentOS/bin/libviplexcore.so",ViplexCore.class); |
| | | * |
| | | * 2.3. 针对java项目,如果要使用相对路径,请将sdk动态库路径添加到classpath环境变量,有下面几种方法(也可以搜索相关教程添加),例如: |
| | | * 2.3.1. 命令行使用: javac -cp "C:\Users\HiWin10\Downloads\ViplexCore3.3.0.01_x64\bin" (详见SDK demo/java/下runDemo.sh或者runDemo.bat文件) |
| | | * 2.3.2. 导入环境变量,如: export CLASSPATH=$CLASSPATH:home/user/ViplexCore3.3.0.01_x64/ |
| | | * 2.3.3. 针对springboot项目: java -Xbootclasspath/a:/home/nova/novasdk/ |
| | | * */ |
| | | public class APITest { |
| | | static Boolean g_bAPIReturn = false; |
| | | static int g_code = 0; |
| | | static String g_sn = "MZVA51930N2113017308"; //BZSA07313J0350000997 |
| | | |
| | | static void waitAPIReturn() throws InterruptedException { |
| | | while (!g_bAPIReturn) { |
| | | Thread.sleep(1000); |
| | | } |
| | | g_bAPIReturn = false; |
| | | } |
| | | |
| | | static void testApi() throws InterruptedException { |
| | | System.setProperty("jna.encoding", "UTF-8"); |
| | | // ViplexCore instance = (ViplexCore) Native.loadLibrary("viplexcore",ViplexCore.class); |
| | | //当需要集成到项目中时,请修改上面加载库的位置为你下载的sdk库的绝对路径,windows下如: |
| | | ViplexCore instance = (ViplexCore) Native.loadLibrary("C:\\Users\\Administrator\\Desktop\\novaWin\\bin\\viplexcore.dll", ViplexCore.class); |
| | | |
| | | //当需要集成到项目中时,请修改此处加载库的位置为你下载的sdk库的绝对路径,linux下如: |
| | | // ViplexCore instance = (ViplexCore) Native.loadLibrary("C:\\Users\\Administrator\\Desktop\\novaLinux\\bin\\libviplexcore.so",ViplexCore.class); |
| | | ViplexCore.CallBack callBack = new ViplexCore.CallBack() { |
| | | |
| | | @Override |
| | | public void dataCallBack(int code, String data) { |
| | | // TODO Auto-generated method stub |
| | | g_code = code; |
| | | String strCode = "\nViplexCore Demo code:" + code; |
| | | String strData = "\nViplexCore Demo data:" + data; |
| | | System.out.println(strCode); |
| | | System.out.println(strData); |
| | | g_bAPIReturn = true; |
| | | } |
| | | |
| | | }; |
| | | |
| | | String rootDir = System.getProperty("user.dir") + "/temp"; |
| | | System.out.println("保存路径:" + rootDir); |
| | | rootDir = rootDir.replaceAll("\\\\", "/"); |
| | | String createProgram = "{\"name\":\"jiemu1\",\"width\":240,\"height\":144}"; |
| | | String editProgram = "{\"programID\":13,\"pageID\":1,\"pageInfo\":{\"name\":\"节目01\",\"widgetContainers\":[{\"contents\":{\"widgets\":[{\"constraints\":[{\"cron\":[\"0 0 0 ? * 1,2,3,4,5,6,7\"],\"endTime\":\"4017-12-30T23:59:59Z+8:00\",\"startTime\":\"1970-01-01T00:00:00Z+8:00\"}],\"duration\":5000,\"dataSource\":\"62ea7e60c493c1f860ae256eef8ec89c.png\",\"type\":\"PICTURE\",\"name\":\"test.png\",\"originalDataSource\":\"C:/Users/Administrator/Desktop/novaWin/demo/java/test.png\"}]},\"id\":1,\"name\":\"widgetContainers1\"}]}}"; |
| | | String genrateProgram = String.format( |
| | | "{\"programID\":13,\"outPutPath\":\"%s/\"}", |
| | | rootDir); |
| | | String trasfromProgram = String.format( |
| | | "{\"sn\": \"%s\",\"iconPath\": \"\",\"iconName\": \"\",\"sendProgramFilePaths\": {\"programPath\": \"%s/program13\",\"mediasPath\": {\"C:/Users/Administrator/Desktop/novaWin/demo/java/test.png\": \"test.png\"}},\"programName\": \"jiemu1\",\"deviceIdentifier\": \"Demo\",\"startPlayAfterTransferred\": true,\"insertPlay\": true}", |
| | | g_sn, |
| | | rootDir); |
| | | |
| | | |
| | | // Boolean bTestVideo = false; |
| | | // if (bTestVideo) { |
| | | // editProgram = "{\"programID\":1,\"pageID\":1,\"pageInfo\":{\"name\":\"Demo\",\"widgetContainers\":[{\"contents\":{\"widgets\":[{\"constraints\":[{\"cron\":[\"0 0 0 ? * 1,2,3,4,5,6,7\"],\"endTime\":\"4017-12-30T23:59:59Z 8:00\",\"startTime\":\"1970-01-01T00:00:00Z 8:00\"}],\"duration\":5000,\"dataSource\":\"219c7dd3260d6bf98ebf61b6da440ffd.avi\",\"type\":\"VIDEO\",\"name\":\"test.vai\",\"originalDataSource\":\"./test.avi\"}]},\"id\":1,\"name\":\"widgetContainers1\"}]}}"; |
| | | //package com.sandu.ximon.admin.newnova.utils; |
| | | // |
| | | // trasfromProgram = String.format( |
| | | // "{\"sn\":\"%s\",\"iconPath\": \"\",\"iconName\": \"\",\"sendProgramFilePaths\": {\"programPath\": \"%s/program1\",\"mediasPath\": {\"./test.avi\": \"test.avi\"}},\"programName\": \"program1\",\"deviceIdentifier\": \"Demo\",\"startPlayAfterTransferred\": true,\"insertPlay\": true}", |
| | | // g_sn, |
| | | // rootDir); |
| | | //import com.sun.jna.Native; |
| | | // |
| | | ///* |
| | | // * 使用前阅读: |
| | | // * 1 关于可能发生的搜索不到T卡的原因: |
| | | // * 1.1. 打开了express,导致udp端口被占用,请关闭express软件后重试 |
| | | // * 1.2. SDK和T卡不在同一个局域网,可以尝试指定ip搜索,使用方法见:https://docapi.vnnox.com/web/#/7?page_id=609 |
| | | // |
| | | // * 2 关于使用sdk动态库可能出现的问题及解决方法: |
| | | // * |
| | | // * 2.1. 在linux下如果出现lib***.so file too short ,这种错误,有可能是软连接失效,可以尝试删除原有文件,尝试 ln -s 重新生成软连接。比如: ./libcurl.so: file too short,首先 rm libcurl.so,然后ln -s libcurl.so.4.3.0 libcurl.so即可。 |
| | | // * 2.2. 针对java项目,使用JNA加载so库时,请使用绝对路径。比如: |
| | | // * //winodws |
| | | // * ViplexCore instance = (ViplexCore) Native.loadLibrary("D:\\ViplexCore3.3.0.01_x64\\bin\\viplexcore.dll",ViplexCore.class); |
| | | // * //或者 linux |
| | | // * ViplexCore instance = (ViplexCore) Native.loadLibrary("home/user/desktop/ViplexCore_3.3.0.01_CentOS/bin/libviplexcore.so",ViplexCore.class); |
| | | // * |
| | | // * 2.3. 针对java项目,如果要使用相对路径,请将sdk动态库路径添加到classpath环境变量,有下面几种方法(也可以搜索相关教程添加),例如: |
| | | // * 2.3.1. 命令行使用: javac -cp "C:\Users\HiWin10\Downloads\ViplexCore3.3.0.01_x64\bin" (详见SDK demo/java/下runDemo.sh或者runDemo.bat文件) |
| | | // * 2.3.2. 导入环境变量,如: export CLASSPATH=$CLASSPATH:home/user/ViplexCore3.3.0.01_x64/ |
| | | // * 2.3.3. 针对springboot项目: java -Xbootclasspath/a:/home/nova/novasdk/ |
| | | // * */ |
| | | //public class APITest { |
| | | // static Boolean g_bAPIReturn = false; |
| | | // static int g_code = 0; |
| | | // static String g_sn = "MZVA51930N2113017308"; //BZSA07313J0350000997 |
| | | // |
| | | // static void waitAPIReturn() throws InterruptedException { |
| | | // while (!g_bAPIReturn) { |
| | | // Thread.sleep(1000); |
| | | // } |
| | | // g_bAPIReturn = false; |
| | | // } |
| | | // |
| | | // static void testApi() throws InterruptedException { |
| | | // System.setProperty("jna.encoding", "UTF-8"); |
| | | //// ViplexCore instance = (ViplexCore) Native.loadLibrary("viplexcore",ViplexCore.class); |
| | | // //当需要集成到项目中时,请修改上面加载库的位置为你下载的sdk库的绝对路径,windows下如: |
| | | // ViplexCore instance = (ViplexCore) Native.loadLibrary("C:\\Users\\Administrator\\Desktop\\novaWin\\bin\\viplexcore.dll", ViplexCore.class); |
| | | // |
| | | // Boolean testText = false; |
| | | // if (testText) { |
| | | // editProgram = "{\"programID\":1,\"pageID\":1,\"pageInfo\":{\"name\":\"jiemu\",\"widgetContainers\":[{\"contents\":{\"widgets\":[{\"constraints\":[{\"cron\":[\"0 0 0 ? * 1,2,3,4,5,6,7\"],\"endTime\":\"4017-12-30T23:59:59Z+8:00\",\"startTime\":\"1970-01-01T00:00:00Z+8:00\"}],\"duration\":5000,\"metadata\":{\"content\":{\"autoPaging\":true,\"backgroundMusic\":{\"duration\":0,\"isTextSync\":false},\"displayStyle\":{\"scrollAttributes\":{\"effects\":{\"animation\":\"MARQUEE_LEFT\",\"speed\":3}},\"type\":\"SCROLL\"},\"paragraphs\":[{\"backgroundColor\":\"#00000000\",\"horizontalAlignment\":\"CENTER\",\"letterSpacing\":0,\"lineSpacing\":0,\"lines\":[{\"segs\":[{\"content\":\"简体繁體日本語한국어.English123\"}]}],\"verticalAlignment\":\"CENTER\"}],\"textAttributes\":[{\"backgroundColor\":\"#ff000000\",\"attributes\":{\"font\":{\"family\":[\"Arial\"],\"isUnderline\":false,\"size\":20,\"style\":\"NORMAL\"},\"letterSpacing\":0,\"textColor\":\"#ffff0000\"}}]}},\"name\":\"text\",\"type\":\"ARCH_TEXT\"}]},\"id\":1,\"name\":\"widgetContainers1\"}]}}"; |
| | | // trasfromProgram = String.format( |
| | | // "{\"sn\": \"%s\",\"iconPath\": \"\",\"iconName\": \"\",\"sendProgramFilePaths\": {\"programPath\": \"%s/program1\",\"mediasPath\": {}},\"programName\": \"program1\",\"deviceIdentifier\": \"Demo\",\"startPlayAfterTransferred\": true,\"insertPlay\": true}", |
| | | // //当需要集成到项目中时,请修改此处加载库的位置为你下载的sdk库的绝对路径,linux下如: |
| | | //// ViplexCore instance = (ViplexCore) Native.loadLibrary("C:\\Users\\Administrator\\Desktop\\novaLinux\\bin\\libviplexcore.so",ViplexCore.class); |
| | | // ViplexCore.CallBack callBack = new ViplexCore.CallBack() { |
| | | // |
| | | // @Override |
| | | // public void dataCallBack(int code, String data) { |
| | | // g_code = code; |
| | | // String strCode = "\nViplexCore Demo code:" + code; |
| | | // String strData = "\nViplexCore Demo data:" + data; |
| | | // System.out.println(strCode); |
| | | // System.out.println(strData); |
| | | // g_bAPIReturn = true; |
| | | // } |
| | | // |
| | | // }; |
| | | // |
| | | // String rootDir = System.getProperty("user.dir") + "/temp"; |
| | | // System.out.println("保存路径:" + rootDir); |
| | | // rootDir = rootDir.replaceAll("\\\\", "/"); |
| | | // String createProgram = "{\"name\":\"jiemu1\",\"width\":240,\"height\":144}"; |
| | | // String editProgram = "{\"programID\":13,\"pageID\":1,\"pageInfo\":{\"name\":\"节目01\",\"widgetContainers\":[{\"contents\":{\"widgets\":[{\"constraints\":[{\"cron\":[\"0 0 0 ? * 1,2,3,4,5,6,7\"],\"endTime\":\"4017-12-30T23:59:59Z+8:00\",\"startTime\":\"1970-01-01T00:00:00Z+8:00\"}],\"duration\":5000,\"dataSource\":\"62ea7e60c493c1f860ae256eef8ec89c.png\",\"type\":\"PICTURE\",\"name\":\"test.png\",\"originalDataSource\":\"C:/Users/Administrator/Desktop/novaWin/demo/java/test.png\"}]},\"id\":1,\"name\":\"widgetContainers1\"}]}}"; |
| | | // String genrateProgram = String.format( |
| | | // "{\"programID\":13,\"outPutPath\":\"%s/\"}", |
| | | // rootDir); |
| | | // String trasfromProgram = String.format( |
| | | // "{\"sn\": \"%s\",\"iconPath\": \"\",\"iconName\": \"\",\"sendProgramFilePaths\": {\"programPath\": \"%s/program13\",\"mediasPath\": {\"C:/Users/Administrator/Desktop/novaWin/demo/java/test.png\": \"test.png\"}},\"programName\": \"jiemu1\",\"deviceIdentifier\": \"Demo\",\"startPlayAfterTransferred\": true,\"insertPlay\": true}", |
| | | // g_sn, |
| | | // rootDir); |
| | | // |
| | | // |
| | | //// Boolean bTestVideo = false; |
| | | //// if (bTestVideo) { |
| | | //// editProgram = "{\"programID\":1,\"pageID\":1,\"pageInfo\":{\"name\":\"Demo\",\"widgetContainers\":[{\"contents\":{\"widgets\":[{\"constraints\":[{\"cron\":[\"0 0 0 ? * 1,2,3,4,5,6,7\"],\"endTime\":\"4017-12-30T23:59:59Z 8:00\",\"startTime\":\"1970-01-01T00:00:00Z 8:00\"}],\"duration\":5000,\"dataSource\":\"219c7dd3260d6bf98ebf61b6da440ffd.avi\",\"type\":\"VIDEO\",\"name\":\"test.vai\",\"originalDataSource\":\"./test.avi\"}]},\"id\":1,\"name\":\"widgetContainers1\"}]}}"; |
| | | //// |
| | | //// trasfromProgram = String.format( |
| | | //// "{\"sn\":\"%s\",\"iconPath\": \"\",\"iconName\": \"\",\"sendProgramFilePaths\": {\"programPath\": \"%s/program1\",\"mediasPath\": {\"./test.avi\": \"test.avi\"}},\"programName\": \"program1\",\"deviceIdentifier\": \"Demo\",\"startPlayAfterTransferred\": true,\"insertPlay\": true}", |
| | | //// g_sn, |
| | | //// rootDir); |
| | | //// } |
| | | //// |
| | | //// |
| | | //// Boolean testText = false; |
| | | //// if (testText) { |
| | | //// editProgram = "{\"programID\":1,\"pageID\":1,\"pageInfo\":{\"name\":\"jiemu\",\"widgetContainers\":[{\"contents\":{\"widgets\":[{\"constraints\":[{\"cron\":[\"0 0 0 ? * 1,2,3,4,5,6,7\"],\"endTime\":\"4017-12-30T23:59:59Z+8:00\",\"startTime\":\"1970-01-01T00:00:00Z+8:00\"}],\"duration\":5000,\"metadata\":{\"content\":{\"autoPaging\":true,\"backgroundMusic\":{\"duration\":0,\"isTextSync\":false},\"displayStyle\":{\"scrollAttributes\":{\"effects\":{\"animation\":\"MARQUEE_LEFT\",\"speed\":3}},\"type\":\"SCROLL\"},\"paragraphs\":[{\"backgroundColor\":\"#00000000\",\"horizontalAlignment\":\"CENTER\",\"letterSpacing\":0,\"lineSpacing\":0,\"lines\":[{\"segs\":[{\"content\":\"简体繁體日本語한국어.English123\"}]}],\"verticalAlignment\":\"CENTER\"}],\"textAttributes\":[{\"backgroundColor\":\"#ff000000\",\"attributes\":{\"font\":{\"family\":[\"Arial\"],\"isUnderline\":false,\"size\":20,\"style\":\"NORMAL\"},\"letterSpacing\":0,\"textColor\":\"#ffff0000\"}}]}},\"name\":\"text\",\"type\":\"ARCH_TEXT\"}]},\"id\":1,\"name\":\"widgetContainers1\"}]}}"; |
| | | //// trasfromProgram = String.format( |
| | | //// "{\"sn\": \"%s\",\"iconPath\": \"\",\"iconName\": \"\",\"sendProgramFilePaths\": {\"programPath\": \"%s/program1\",\"mediasPath\": {}},\"programName\": \"program1\",\"deviceIdentifier\": \"Demo\",\"startPlayAfterTransferred\": true,\"insertPlay\": true}", |
| | | //// g_sn, |
| | | //// rootDir); |
| | | //// } |
| | | // |
| | | // String companyInfo = "{\"company\":\"NovaStar\",\"phone\":\"029-68216000\",\"email\":\"hr@novastar.tech\"}"; |
| | | // instance.nvSetDevLang("Java"); |
| | | // System.out.println("nvInit(sdk 初始化):"); |
| | | // System.out.println(instance.nvInit(rootDir, companyInfo)); |
| | | // System.out.println("ViplexCore Demo nvSearchTerminalAsync(搜索) begin... "); |
| | | // instance.nvSearchTerminalAsync(callBack); |
| | | // Thread.sleep(3000); |
| | | // g_bAPIReturn = false; |
| | | // |
| | | // // System.out.println("ViplexCore Demo nvSearchAppointIpAsync(指定IP搜索) begin... "); |
| | | // // String requestData = "{\"ip\":\"172.18.179.106\"}"; |
| | | // // instance.nvSearchAppointIpAsync(requestData, callBack); |
| | | // // Thread.sleep(2000); |
| | | // |
| | | // System.out.println("ViplexCore Demo nvLoginAsync(登录) begin... "); |
| | | // String loginParam = String.format("{\"sn\":\"MZVA51930N2113017308\",\"ip\":\"\",\"username\":\"admin\",\"rememberPwd\":0,\"password\":\"123456\",\"loginType\":0}" |
| | | // , g_sn); |
| | | // instance.nvLoginAsync(loginParam, callBack); |
| | | // waitAPIReturn(); |
| | | // if (g_code != 0) { |
| | | // System.out.println("ViplexCore Demo nvLoginAsync(登录) 失败!"); |
| | | // System.out.println("错误码:" + g_code); |
| | | // return; |
| | | // } |
| | | |
| | | String companyInfo = "{\"company\":\"NovaStar\",\"phone\":\"029-68216000\",\"email\":\"hr@novastar.tech\"}"; |
| | | instance.nvSetDevLang("Java"); |
| | | System.out.println("nvInit(sdk 初始化):"); |
| | | System.out.println(instance.nvInit(rootDir, companyInfo)); |
| | | System.out.println("ViplexCore Demo nvSearchTerminalAsync(搜索) begin... "); |
| | | instance.nvSearchTerminalAsync(callBack); |
| | | Thread.sleep(3000); |
| | | g_bAPIReturn = false; |
| | | |
| | | // System.out.println("ViplexCore Demo nvSearchAppointIpAsync(指定IP搜索) begin... "); |
| | | // String requestData = "{\"ip\":\"172.18.179.106\"}"; |
| | | // instance.nvSearchAppointIpAsync(requestData, callBack); |
| | | // Thread.sleep(2000); |
| | | |
| | | System.out.println("ViplexCore Demo nvLoginAsync(登录) begin... "); |
| | | String loginParam = String.format("{\"sn\":\"MZVA51930N2113017308\",\"ip\":\"\",\"username\":\"admin\",\"rememberPwd\":0,\"password\":\"123456\",\"loginType\":0}" |
| | | , g_sn); |
| | | instance.nvLoginAsync(loginParam, callBack); |
| | | waitAPIReturn(); |
| | | if (g_code != 0) { |
| | | System.out.println("ViplexCore Demo nvLoginAsync(登录) 失败!"); |
| | | System.out.println("错误码:" + g_code); |
| | | return; |
| | | } |
| | | System.out.println("ViplexCore Demo nvCreateProgramAsync(创建节目) begin... "); |
| | | instance.nvCreateProgramAsync(createProgram, callBack); |
| | | waitAPIReturn(); |
| | | |
| | | |
| | | String requestDatapath = "{\"filePath\":\"C:/Users/Administrator/Desktop/novaWin/demo/java/test.png\"}"; |
| | | System.out.println("ViplexCore Demo nvGetFileMD5Async(获取MD5) begin... "); |
| | | instance.nvGetFileMD5Async(requestDatapath, callBack); |
| | | waitAPIReturn(); |
| | | |
| | | System.out.println("ViplexCore Demo nvSetPageProgramAsync(编辑节目) begin... "); |
| | | instance.nvSetPageProgramAsync(editProgram, callBack); |
| | | waitAPIReturn(); |
| | | |
| | | System.out.println("ViplexCore Demo nvMakeProgramAsync(生成节目) begin... "); |
| | | instance.nvMakeProgramAsync(genrateProgram, callBack); |
| | | waitAPIReturn(); |
| | | |
| | | System.out.println("ViplexCore Demo nvStartTransferProgramAsync(发送节目) begin... "); |
| | | System.out.println(trasfromProgram); |
| | | instance.nvStartTransferProgramAsync(trasfromProgram, callBack); |
| | | Thread.sleep(10000); |
| | | g_bAPIReturn = false; |
| | | |
| | | System.out.println("ViplexCore Demo nvGetProgramInfoAsync(获取节目信息) begin... "); |
| | | String requestDatasn = String.format("{\"sn\":\"%s\"}", g_sn); |
| | | instance.nvGetProgramInfoAsync(requestDatasn, callBack); |
| | | waitAPIReturn(); |
| | | // |
| | | // System.out.println("ViplexCore Demo nvSetVolumeAsync(设置音量) begin... "); |
| | | // String setVolumeParam = String.format("{\"sn\":\"%s\",\"volumeInfo\":{\"ratio\":60.0}}", g_sn); |
| | | // instance.nvSetVolumeAsync(setVolumeParam, callBack); |
| | | // System.out.println("ViplexCore Demo nvCreateProgramAsync(创建节目) begin... "); |
| | | // instance.nvCreateProgramAsync(createProgram, callBack); |
| | | // waitAPIReturn(); |
| | | // |
| | | // System.out.println("ViplexCore Demo nvGetVolumeAsync(获取音量) begin... "); |
| | | // String getVolumeParam = String.format("{\"sn\":\"%s\"}", g_sn); |
| | | // instance.nvGetVolumeAsync(getVolumeParam, callBack); |
| | | // |
| | | // String requestDatapath = "{\"filePath\":\"C:/Users/Administrator/Desktop/novaWin/demo/java/test.png\"}"; |
| | | // System.out.println("ViplexCore Demo nvGetFileMD5Async(获取MD5) begin... "); |
| | | // instance.nvGetFileMD5Async(requestDatapath, callBack); |
| | | // waitAPIReturn(); |
| | | } |
| | | |
| | | public static void main(String[] args) throws InterruptedException { |
| | | testApi(); |
| | | } |
| | | } |
| | | // |
| | | // System.out.println("ViplexCore Demo nvSetPageProgramAsync(编辑节目) begin... "); |
| | | // instance.nvSetPageProgramAsync(editProgram, callBack); |
| | | // waitAPIReturn(); |
| | | // |
| | | // System.out.println("ViplexCore Demo nvMakeProgramAsync(生成节目) begin... "); |
| | | // instance.nvMakeProgramAsync(genrateProgram, callBack); |
| | | // waitAPIReturn(); |
| | | // |
| | | // System.out.println("ViplexCore Demo nvStartTransferProgramAsync(发送节目) begin... "); |
| | | // System.out.println(trasfromProgram); |
| | | // instance.nvStartTransferProgramAsync(trasfromProgram, callBack); |
| | | // Thread.sleep(10000); |
| | | // g_bAPIReturn = false; |
| | | // |
| | | // System.out.println("ViplexCore Demo nvGetProgramInfoAsync(获取节目信息) begin... "); |
| | | // String requestDatasn = String.format("{\"sn\":\"%s\"}", g_sn); |
| | | // instance.nvGetProgramInfoAsync(requestDatasn, callBack); |
| | | // waitAPIReturn(); |
| | | //// |
| | | //// System.out.println("ViplexCore Demo nvSetVolumeAsync(设置音量) begin... "); |
| | | //// String setVolumeParam = String.format("{\"sn\":\"%s\",\"volumeInfo\":{\"ratio\":60.0}}", g_sn); |
| | | //// instance.nvSetVolumeAsync(setVolumeParam, callBack); |
| | | //// waitAPIReturn(); |
| | | //// |
| | | //// System.out.println("ViplexCore Demo nvGetVolumeAsync(获取音量) begin... "); |
| | | //// String getVolumeParam = String.format("{\"sn\":\"%s\"}", g_sn); |
| | | //// instance.nvGetVolumeAsync(getVolumeParam, callBack); |
| | | //// waitAPIReturn(); |
| | | // } |
| | | // |
| | | // public static void main(String[] args) throws InterruptedException { |
| | | // testApi(); |
| | | // } |
| | | //} |