精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

用鴻蒙的分布式助力七夕

系統 分布式
如果升級了最新的B站服務卡片,那么當桌面上添加頭像卡片時,只要點擊頭像,就會看到下圖的效果。一個應用鴻蒙分布式能力的小功能。

[[418672]]

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

在情人節后,為之前的B站卡片項目增加一個隱藏功能。如果升級了最新的B站服務卡片,那么當桌面上添加頭像卡片時,只要點擊頭像,就會看到下圖的效果。一個應用鴻蒙分布式能力的小功能。

視頻預覽地址:https://harmonyos.51cto.com/show/7762

完整項目地址:https://gitee.com/liangzili/bilibili-cards

1.添加一個播放頁

比如PlayerSlice,這個頁面用來實現視頻的播放。

用鴻蒙的分布式助力七夕-鴻蒙HarmonyOS技術社區

2.為頭像卡片添加點擊事件

當點擊卡片上的頭像時實現頁面跳轉,代碼如下

src/main/js/fans/pages/index/index.hml

  1. <div class="card_root_layout" else
  2.     <div class="div_left_container"
  3.         <stack class="stack-parent" onclick="sendRouterEvent"
  4.             <image src="{{src}}" class="image_src"></image> 
  5.             <image src="{{vip}}" class="image_vip"></image> 
  6.         </stack> 
  7.     </div> 
  8.     <text class="item_title">{{follower}}</text> 
  9. </div> 

actions中設置跳轉到剛才新建的播放頁面。

src/main/js/fans/pages/index/index.json

  1. "actions": { 
  2.   "sendRouterEvent": { 
  3.     "action""router"
  4.     "abilityName""com.liangzili.demos.Player"
  5.     "params"true 
  6.   } 

3.在播放頁判斷拉起方式

從intent中提取參數params,如果播放頁是服務卡片拉起的,得到true。如果是分布式拉起的得到false。

  1. params = intent.getStringParam("params");//從intent中獲取 跳轉事件定義的params字段的值 
  2. if(params.equals("true")){ 
  3.     Intent intent0 = new Intent(); 
  4.     Operation op = new Intent.OperationBuilder() 
  5.         .withDeviceId(DistributedUtils.getDeviceId())//參數1.是否跨設備,空,不跨設備 
  6.         .withBundleName("com.liangzili.demos")//參數2.在config.json中的bundleName 
  7.         .withAbilityName("com.liangzili.demos.Player")//參數3.要跳轉的ability名 
  8.         .withFlags(Intent.FLAG_ABILITYSLICE_MULTI_DEVICE) 
  9.         .build(); 
  10.     intent0.setOperation(op); 
  11.     intent0.setParam("params","false"); 
  12.     startAbility(intent0); 
  13.     videoSource = "resources/base/media/right.mp4"
  14. }else
  15.     videoSource = "resources/base/media/left.mp4"

4.申請分布式拉起頁面權限

如果params就調用分布式拉起頁面,得提前為應用獲取權限。

在app首次啟動時提醒用戶獲取分布式權限。

src/main/java/com/liangzili/demos/MainAbility.java

  1. requestPermissionsFromUser(new String[]{"ohos.permission.DISTRIBUTED_DATASYNC"},0); 

5.獲取遠端設備ID

要拉起遠端設備上的頁面,得先獲取設備的ID。

  1. public class DistributedUtils { 
  2.     public static String getDeviceId(){ 
  3.         //獲取在線設備列表,getDeviceList拿到的設備不包含本機。 
  4.         List<DeviceInfo> deviceList = DeviceManager.getDeviceList(DeviceInfo.FLAG_GET_ONLINE_DEVICE); 
  5.         if(deviceList.isEmpty()){ 
  6.             return null
  7.         } 
  8.         int deviceNum = deviceList.size(); 
  9.         List<String> deviceIds = new ArrayList<>(deviceNum);    //提取設備Id 
  10.         List<String> deviceNames = new ArrayList<>(deviceNum);  //提取設備名 
  11.         deviceList.forEach((device)->{ 
  12.             deviceIds.add(device.getDeviceId()); 
  13.             deviceNames.add(device.getDeviceName()); 
  14.         }); 
  15.  
  16.         String devcieIdStr = deviceIds.get(0); 
  17.         return devcieIdStr; 
  18.     } 

6.獲取資源地址播放視頻

視頻播放參考的是軟通動力HarmonyOS學院的拜年視頻代碼,官方的demo和CadeLabs還沒跑通,時間有點來不及了,原諒我大段復制。

  1. //設置沉浸式狀態欄 
  2. getWindow().addFlags(WindowManager.LayoutConfig.MARK_TRANSLUCENT_STATUS); 
  3. initPlayer(); 
  4.  
  5. //需要重寫兩個回調:VideoSurfaceCallback 、VideoPlayerCallback 
  6. private void initPlayer() { 
  7.     sfProvider=(SurfaceProvider) findComponentById(ResourceTable.Id_surfaceProvider); 
  8.     //        image=(Image) findComponentById(ResourceTable.Id_img); 
  9.     sfProvider.getSurfaceOps().get().addCallback(new VideoSurfaceCallback()); 
  10.     // sfProvider.pinToZTop(boolean)--如果設置為true, 視頻控件會在最上層展示,但是設置為false時,雖然不在最上層展示,卻出現黑屏, 
  11.     // 需加上一行代碼:WindowManager.getInstance().getTopWindow().get().setTransparent(true); 
  12.     sfProvider.pinToZTop(true); 
  13.     //WindowManager.getInstance().getTopWindow().get().setTransparent(true); 
  14.     player=new Player(getContext()); 
  15.     //sfProvider添加監聽事件 
  16.     sfProvider.setClickedListener(new Component.ClickedListener() { 
  17.         @Override 
  18.         public void onClick(Component component) { 
  19.             if(player.isNowPlaying()){ 
  20.                 //如果正在播放,就暫停 
  21.                 player.pause(); 
  22.                 //播放按鈕可見 
  23.                 image.setVisibility(Component.VISIBLE); 
  24.             }else { 
  25.                 //如果暫停,點擊繼續播放 
  26.                 player.play(); 
  27.                 //播放按鈕隱藏 
  28.                 image.setVisibility(Component.HIDE); 
  29.             } 
  30.         } 
  31.     }); 
  32. private class VideoSurfaceCallback implements SurfaceOps.Callback { 
  33.     @Override 
  34.     public void surfaceCreated(SurfaceOps surfaceOps) { 
  35.         HiLog.info(logLabel,"surfaceCreated() called."); 
  36.         if (sfProvider.getSurfaceOps().isPresent()) { 
  37.             Surface surface = sfProvider.getSurfaceOps().get().getSurface(); 
  38.             playLocalFile(surface); 
  39.         } 
  40.     } 
  41.     @Override 
  42.     public void surfaceChanged(SurfaceOps surfaceOps, int i, int i1, int i2) { 
  43.         HiLog.info(logLabel,"surfaceChanged() called."); 
  44.     } 
  45.     @Override 
  46.     public void surfaceDestroyed(SurfaceOps surfaceOps) { 
  47.         HiLog.info(logLabel,"surfaceDestroyed() called."); 
  48.     } 
  49. private void playLocalFile(Surface surface) { 
  50.     try { 
  51.         RawFileDescriptor filDescriptor = getResourceManager().getRawFileEntry(videoSource).openRawFileDescriptor(); 
  52.         Source source = new Source(filDescriptor.getFileDescriptor(),filDescriptor.getStartPosition(),filDescriptor.getFileSize()); 
  53.         player.setSource(source); 
  54.         player.setVideoSurface(surface); 
  55.         player.setPlayerCallback(new VideoPlayerCallback()); 
  56.         player.prepare(); 
  57.         sfProvider.setTop(0); 
  58.         player.play(); 
  59.     } catch (Exception e) { 
  60.         HiLog.info(logLabel,"playUrl Exception:" + e.getMessage()); 
  61.     } 

參考文章:

【軟通動力】SurfaceProvider實現視頻播放Demo-熱乎乎的拜年視頻-鴻蒙HarmonyOS技術社區-鴻蒙官方合作伙伴-51CTO.COM

鴻蒙應用開發入門(六):頁面間跳轉-鴻蒙HarmonyOS技術社區-鴻蒙官方合作伙伴-51CTO.CO

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

 

責任編輯:jianghua 來源: 鴻蒙社區
相關推薦

2021-08-23 10:49:02

鴻蒙HarmonyOS應用

2021-08-23 11:03:54

鴻蒙HarmonyOS應用

2012-08-24 10:49:51

備份恢復

2023-08-22 21:39:25

2018-08-19 14:30:42

女性分析網站

2015-08-21 17:10:03

云安全

2020-08-26 06:04:25

信息泄露密鑰加密信息安全

2019-06-19 15:40:06

分布式鎖RedisJava

2021-08-15 19:00:14

算法floydDijkstra

2025-08-05 08:30:08

2021-05-17 09:32:18

分布式存儲問題數據

2011-08-06 23:25:49

筆記本導購

2019-05-05 08:37:39

分布式PyTorchGPU

2017-08-23 10:01:00

搜狗

2013-08-13 09:24:25

程序員七夕節

2021-05-28 09:52:00

鴻蒙HarmonyOS應用

2019-10-10 09:16:34

Zookeeper架構分布式

2021-08-13 10:38:23

人工智能AI深度學習

2020-11-06 12:12:35

HarmonyOS
點贊
收藏

51CTO技術棧公眾號

frxxee中国xxx麻豆hd| 91最新在线观看| 四虎影视在线观看2413| 麻豆精品网站| 日韩在线视频导航| 性生活在线视频| 天堂√8在线中文| 中国色在线观看另类| 亚洲精品日产aⅴ| 尤物视频在线观看国产| 日韩夫妻性生活xx| 欧美精品一区二区精品网| 少妇高清精品毛片在线视频| 国产黄网站在线观看| av电影天堂一区二区在线| 国产精品视频网| 黄色一级视频在线观看| 欧美少妇性xxxx| 亚洲高清不卡av| 在线观看免费视频高清游戏推荐| 日韩欧美激情视频| 国产成人影院| 精品va天堂亚洲国产| 一区二区三区视频网| 中文字幕在线高清| 亚洲图片欧美一区| 中国成人在线视频| 免费黄色片在线观看| 国产91丝袜在线观看| 国产精品丝袜白浆摸在线| 久久精品视频8| 一区二区影视| 精品国产欧美一区二区三区成人 | 久久99精品国产一区二区三区| 午夜国产小视频| 国产一区毛片| 亚洲乱亚洲乱妇无码| 亚欧精品在线视频| 激情亚洲小说| 欧洲视频一区二区| 成人在线观看a| 伊人久久综合一区二区| 亚洲成a人片在线不卡一二三区 | 偷拍一区二区三区| 男人j进女人j| 国产高清一区二区三区视频| 国产精品理论片| 五月婷婷综合色| 国产高清自拍视频在线观看| 久久亚洲私人国产精品va媚药| 国产91九色视频| 日本熟妇一区二区| 亚洲国产午夜| 91精品国产91久久久久久久久| 国产美女免费无遮挡| 日韩美脚连裤袜丝袜在线| 亚洲福利视频在线| 人妻精品久久久久中文字幕| 麻豆一区二区麻豆免费观看| 日韩三级中文字幕| 可以看的av网址| 国产精品自在| 日韩久久精品电影| mm131美女视频| 国产最新精品| 日韩在线观看你懂的| 制服丨自拍丨欧美丨动漫丨| 久久一区二区中文字幕| 俺去亚洲欧洲欧美日韩| 中文字幕av播放| 欧美视频久久| 51午夜精品视频| 中文精品久久久久人妻不卡| 毛片一区二区三区| 91一区二区三区| 黑人乱码一区二区三区av| 粉嫩av一区二区三区粉嫩 | 不卡av电影在线| 日韩高清一区在线| 91欧美精品成人综合在线观看| 在线天堂中文字幕| 日日夜夜一区二区| 91亚洲va在线va天堂va国 | 欧美精品日韩精品| 婷婷中文字幕在线观看| 成人自拍在线| 亚洲人成欧美中文字幕| www久久久久久久| 欧美久久影院| 国产99视频在线观看| 在线免费看毛片| 成人免费的视频| 色吧亚洲视频| 男女在线视频| 日本韩国精品在线| 韩国三级与黑人| 国模精品一区| 国内精品久久影院| 丰满熟女人妻一区二区三 | 久久久久久久久久毛片| 国产图片一区| www.欧美精品一二三区| 日韩av在线电影| 激情亚洲综合在线| 免费久久久一本精品久久区| 亚洲麻豆精品| 粉嫩av一区二区三区免费野| 天天干天天爽天天射| 超碰精品在线观看| 中文字幕日韩欧美| 国产超碰人人爽人人做人人爱| 亚洲人妖在线| 国产精品你懂得| 天天av天天翘| 樱桃视频在线观看一区| 999在线免费视频| 国产一区二区三区不卡av| 精品国产一区二区三区在线观看| 一区二区三区在线观看免费视频| 欧美美乳视频| 欧美大码xxxx| 一个人看的www日本高清视频| 免费看欧美美女黄的网站| 久久人人爽人人| 国产欧美熟妇另类久久久| 国产三级一区二区三区| 欧美 日本 亚洲| 好吊妞视频这里有精品 | 东京热av一区| 欧美3p在线观看| 国产精品久久91| 日本韩国一区| 婷婷综合另类小说色区| 深夜福利网站在线观看| 天天做综合网| 国产欧美 在线欧美| 国产日韩精品在线看| 性欧美大战久久久久久久久| 日韩精品xxx| 欧美69视频| 69174成人网| 99热国产在线| 日韩精品自拍偷拍| 免费在线观看国产精品| 国产乱子轮精品视频| 国产卡一卡二在线| 国产亚洲高清一区| 欧美超级免费视 在线| 99草在线视频| 夜夜嗨av一区二区三区网页| 香蕉视频色在线观看| 在线中文字幕第一区| 91免费视频国产| 尤物yw193can在线观看| 精品欧美久久久| 日本三级欧美三级| 91麻豆视频网站| 免费日韩中文字幕| 激情五月综合网| 国产精品视频久久久久| 国产日产一区二区| 日韩欧美国产高清| 五月天综合激情| 国产片一区二区三区| 午夜免费高清视频| 国产精品不卡| 国产传媒一区二区| 中文字幕人成乱码在线观看| 亚洲一级黄色av| 国产精品久久久久久69| 夜夜亚洲天天久久| 91精品人妻一区二区三区蜜桃欧美| 欧美一区在线看| 狠狠色狠狠色综合人人| 色成人免费网站| 日韩中文娱乐网| 亚洲精品久久久久avwww潮水| 中文字幕精品三区| 波多野结衣网页| av成人毛片| 亚洲人成网站在线播放2019| 日韩精品一级| 欧美综合激情网| 激情成人四房播| 亚洲精品福利视频| 在线播放成人av| 亚洲第一狼人社区| 国产激情av在线| 国产91露脸合集magnet| 久久久久久久久久久99| 日韩国产欧美| 国产一区二区中文字幕免费看| 污污的视频在线观看| 亚洲精品视频在线观看视频| 97人妻精品一区二区三区视频| 国产欧美一二三区| 爽爽爽在线观看| 亚洲欧美日本视频在线观看| 中文精品视频一区二区在线观看| 电影一区二区| 欧美激情三级免费| h视频网站在线观看| 亚洲风情亚aⅴ在线发布| 91精品国产色综合久久不8| 红桃视频成人在线观看| 色老板免费视频| 国产亚洲1区2区3区| 特黄特色免费视频| 美国三级日本三级久久99| 国产黄页在线观看| 欧美全黄视频| 伊人色综合久久天天五月婷| 一道在线中文一区二区三区| 91超碰rencao97精品| 国产成+人+综合+亚洲欧美| 91av在线免费观看视频| av在线播放观看| 综合网中文字幕| 欧美亚洲日本| 亚洲精品久久7777777| 精品久久久久久亚洲综合网站| 亚洲国产毛片aaaaa无费看| 久久日免费视频| 国产色一区二区| 丰满少妇在线观看资源站| 成人av网站在线观看免费| 少妇愉情理伦片bd| 国产在线精品一区二区不卡了| 成人小视频在线观看免费| 欧美限制电影| 久久影院理伦片| 9l视频自拍九色9l视频成人| 91大片在线观看| 日本在线成人| 成人黄色免费网站在线观看| 成人在线免费av| 国产在线精品一区免费香蕉| 成人激情综合| 国产精品久久久久久超碰| 91av亚洲| 国产精品va在线| 深夜视频一区二区| 国产精品久久久久影院日本| 性感美女一区二区在线观看| 日本高清视频一区| 蜜桃视频成人m3u8| 国产裸体写真av一区二区 | 国产成人中文字幕| 国产精品一二三产区| 97视频色精品| 中文字幕成在线观看| 国产xxx69麻豆国语对白| 国产精品专区免费| 日本欧美中文字幕| 91福利精品在线观看| 国产精品视频自在线| 91精品亚洲一区在线观看| 91成人免费视频| 秋霞影院一区二区三区| 欧美日产一区二区三区在线观看| 亚洲精品v亚洲精品v日韩精品| 日本道色综合久久影院| 亚洲天堂一区二区| 成人午夜黄色影院| 亚洲国产中文在线| 久久久久网址| 久久精品国产68国产精品亚洲| 久久青青草综合| 欧美日韩在线播放视频| 亚洲午夜精品一区二区三区| 911久久香蕉国产线看观看| 亚洲精品无码国产| 亚欧美中日韩视频| 日韩中文字幕a| 成人动漫一区二区| 女女互磨互喷水高潮les呻吟| 不卡视频在线看| 国产精品高清无码在线观看| 国产精品乱码一区二三区小蝌蚪| 人妻熟女aⅴ一区二区三区汇编| 成人免费精品视频| 男人的天堂官网| 亚洲综合一二区| 无码人妻熟妇av又粗又大 | 天天综合久久综合| 在线播放欧美女士性生活| 人妻少妇一区二区三区| 亚洲深夜福利在线| 91香蕉在线观看| 国产91在线播放九色快色| 精品国产三级| 欧美大陆一区二区| 午夜久久福利| 欧美日韩在线免费播放| 国产激情91久久精品导航| 无码人妻精品一区二区中文| 亚洲欧美日韩久久| 成人免费毛片视频| 精品免费一区二区三区| 在线播放毛片| 2019最新中文字幕| 欧美a在线观看| 天堂精品视频| 性感少妇一区| 性xxxxxxxxx| 成人欧美一区二区三区视频网页| 99成人在线观看| 欧美性猛交xxxx乱大交3| www.激情五月| 在线国产精品播放| 日本蜜桃在线观看视频| 99re国产在线播放| 97精品中文字幕| 爱情岛论坛vip永久入口| 成人性生交大片免费看视频在线 | 欧美激情精品久久久久久大尺度| 二区在线播放| 国产精品日韩在线观看| 亚洲欧美日本伦理| 成年人午夜免费视频| 国产精品一色哟哟哟| 亚洲综合图片一区| 欧美日韩高清影院| 成人午夜电影在线观看| 欧美在线视频一二三| 女人抽搐喷水高潮国产精品| 红桃一区二区三区| 国产麻豆精品在线| 小泽玛利亚一区二区免费| 欧美在线视频全部完| 日本电影一区二区在线观看| 97色在线观看| 日本欧美高清| 国产黄色一级网站| 不卡一二三区首页| 久久夜靖品2区| 亚洲国产精品网站| 免费h视频在线观看| 精品久久久久亚洲| 亚洲毛片播放| 无码人妻aⅴ一区二区三区| 婷婷国产在线综合| 天堂成人在线| 欧美综合第一页| 欧洲杯什么时候开赛| 9久久婷婷国产综合精品性色| 国产精品一区二区三区四区| 少妇视频一区二区| 51精品视频一区二区三区| 成人免费看片| 国产高清不卡av| 一本色道88久久加勒比精品| aa一级黄色片| 欧美自拍丝袜亚洲| 日本激情视频在线观看| 亚洲va男人天堂| 亚洲激情国产| 国产精品三级在线观看无码| 色天天综合色天天久久| www.在线播放| 51国偷自产一区二区三区的来源| 精品福利久久久| 中文字幕第17页| 亚洲狠狠丁香婷婷综合久久久| 波多野结衣家庭主妇| 中文国产成人精品| 国产精品蜜月aⅴ在线| 少妇免费毛片久久久久久久久 | 国产真人无码作爱视频免费| 国产亚洲精品7777| 国产精品熟女久久久久久| 欧美另类第一页| 亚洲精华一区二区三区| 亚洲老女人av| 亚洲色图.com| 全部免费毛片在线播放一个| 日本亚洲精品在线观看| 久久久久午夜电影| 日本不卡视频一区| 在线观看亚洲专区| 日本动漫同人动漫在线观看| 鲁鲁视频www一区二区| 精品一区二区在线视频| 国产主播在线播放| 国产一区二区三区在线观看网站| 中文字幕资源网在线观看免费| 99在线视频播放| 日韩高清一级片| 麻豆一区产品精品蜜桃的特点| 欧美日韩一本到| sqte在线播放| 亚洲综合网中心| 91色.com| 国产av一区二区三区精品| 欧美中文在线视频| 欧美日韩a区| 在线看片中文字幕| 日韩成人av网| 亚洲亚洲一区二区三区| 天天爽人人爽夜夜爽|