<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          畢業(yè)設(shè)計(jì)So Easy:珠穆朗瑪FM音頻電臺APP

          共 3812字,需瀏覽 8分鐘

           ·

          2021-06-06 14:02

          點(diǎn)擊上方藍(lán)色字體,關(guān)注我們


          很多計(jì)算機(jī)專業(yè)大學(xué)生經(jīng)常和我交流:畢業(yè)設(shè)計(jì)沒思路、不會做、論文不會寫、太難了......


          針對這些問題,決定分享一些軟、硬件項(xiàng)目的設(shè)計(jì)思路和實(shí)施方法,希望可以幫助大家,也祝愿各位學(xué)子,順利畢業(yè)!


          項(xiàng)目專欄:https://blog.csdn.net/m0_38106923/category_11085518.html




          APP體驗(yàn)安裝包下載:https://download.csdn.net/download/m0_38106923/19322068



          1


          項(xiàng)目背景


          在移動互聯(lián)網(wǎng)迅猛發(fā)展的大背景下,音頻作為伴隨性媒體能夠最大化地利用用戶的日常碎片化時(shí)間,較其他聽書APP和傳統(tǒng)電臺,喜馬拉雅FM能夠脫穎而出,正是因?yàn)樗珳?zhǔn)的目標(biāo)用戶定位,做好目標(biāo)受眾細(xì)分,創(chuàng)新節(jié)目內(nèi)容,優(yōu)化節(jié)目形式,滿足消費(fèi)者的需求,并利用網(wǎng)絡(luò)營銷,保存現(xiàn)有優(yōu)勢,快速搶占市場份額。



          2


          系統(tǒng)介紹


          2.1、系統(tǒng)概述


          珠穆朗瑪FM是一款仿照喜馬拉雅(音頻分享平臺)APP所開發(fā)的音頻分享電臺APP,該應(yīng)用充分實(shí)現(xiàn)喜馬拉雅APP的諸多重要功能,如在線專輯展示、電臺展示及播放、音頻下載、音頻錄制、音頻分享等功能,通過對以上多種功能的設(shè)計(jì)對互聯(lián)網(wǎng)中音頻的分享與聲音服務(wù)有了更深層的認(rèn)識。


          2.2、關(guān)鍵技術(shù)


          本項(xiàng)目采用retrofit+rxjava2+rxandroid+arouter+mvvm+fragmentation實(shí)現(xiàn)單activity多fragme組件化架構(gòu)。


          • Retrofit:Retrofit是現(xiàn)下Android端開發(fā)非常流行的一款網(wǎng)絡(luò)請求框架,它通過動態(tài)代理的方式將Java接口翻譯成網(wǎng)絡(luò)請求,通過OkHttp發(fā)送請求,并且其具備強(qiáng)大的可擴(kuò)展性,支持各種數(shù)據(jù)格式的轉(zhuǎn)換以及RxJava。

          • Rxjava2:一個(gè)在Java VM 上使用可觀測的序列來組成異步的,基于事件的程序的庫。

          • Rxandroid:是RxJava針對Android平臺的一個(gè)擴(kuò)展,用于Android開發(fā)提供響應(yīng)式擴(kuò)展組件快速、易于開發(fā)Android應(yīng)用程序。

          • Arouter:ARouter是阿里開源的一款android路由框架。通過路由進(jìn)行界面跳轉(zhuǎn),區(qū)別于 Intent的顯隱式跳轉(zhuǎn)。在模塊化的項(xiàng)目中,友好的解決了因模塊互相依賴沖突,而界面互相跳轉(zhuǎn)不了的問題,使用ARouter進(jìn)行跳轉(zhuǎn),兩個(gè) library互相不依賴,也可以相互跳轉(zhuǎn)。

          • Mvvm:MVVM是Model-View-ViewModel的簡寫。它本質(zhì)上就是MVC 的改進(jìn)版。MVVM 就是將其中的View 的狀態(tài)和行為抽象化,讓我們將視圖 UI 和業(yè)務(wù)邏輯分開。它可以取出 Model 的數(shù)據(jù)同時(shí)幫忙處理 View 中由于需要展示內(nèi)容而涉及的業(yè)務(wù)邏輯。

          • Fragmentation:Fragmentation非常適合一個(gè)Activity管理多個(gè)fragment。

          • 組件化:組件化是指解耦復(fù)雜系統(tǒng)時(shí)將多個(gè)功能模塊拆分、重組的過程,有多種屬性、狀態(tài)反映其內(nèi)部特性。


          2.3、環(huán)境配置


          開發(fā)環(huán)境:Windows 10及以上,Android studio 4.1.2

          運(yùn)行環(huán)境:Android 8.0 及以上,JDK 1.8,SDK 21及以上

          網(wǎng)絡(luò)環(huán)境:Internet ,Wi-Fi



          3


          系統(tǒng)結(jié)構(gòu)設(shè)計(jì)


          3.1、播放器狀態(tài)結(jié)構(gòu)圖



          3.2、登錄流程結(jié)構(gòu)圖



          4


          系統(tǒng)模塊設(shè)計(jì)


          此APP共分為5個(gè)模塊:“我的”模塊、首頁模塊、歷史記錄模塊、播放模塊、發(fā)現(xiàn)模塊。


          • “我的”模塊:負(fù)責(zé)APP的登錄注冊、登錄登出及分享操作;

          • 首頁模塊:分類展示、音頻搜索、音頻展示;

          • 歷史記錄模塊:訂閱內(nèi)容與推薦訂閱、已下載、播放歷史、已購買的音頻、喜歡的音頻;

          • 播放模塊:熱門播放的內(nèi)容展示、專輯展示;

          • 發(fā)現(xiàn)模塊:付費(fèi)內(nèi)容、全面朗讀、活動、商城等待開發(fā)。


          5


          系統(tǒng)總體架構(gòu)




          6


          接口描述


          喜馬拉雅開放平臺標(biāo)準(zhǔn)授權(quán)登錄流程采用OAuth2標(biāo)準(zhǔn)授權(quán)碼(authorization code)模式。授權(quán)碼模式(authorization code)是功能最完整、流程最嚴(yán)密的授權(quán)模式。它的特點(diǎn)就是通過第三方客戶端的后臺服務(wù)器,與我們的oauth2認(rèn)證服務(wù)器進(jìn)行互動??傮w來說先進(jìn)行用戶登錄,再進(jìn)行用戶授權(quán)。


          注意:這種授權(quán)模式不會存儲任何私鑰在客戶端(或?yàn)g覽器端)。


          這種授權(quán)模式的流程示意圖如下所示:



          往期推薦


          點(diǎn)擊閱讀原文,更精彩~
          瀏覽 29
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  色婷婷国产在线视频 | 一本无码免费视频 | 玖玖精品一区二区 | 成人欧美在线 | 久久骚|