公告

Collapse
No announcement yet.

Discuz! 掌上論壇APP Android源碼配置與製作教學

Collapse
X
Collapse
Who has read this thread:
 
  • Filter
  • Time
  • Show
全部清除
新帖子

  • [原創] Discuz! 掌上論壇APP Android源碼配置與製作教學

    此修改方式由幻冰星空綜合論壇柚子所有,非經過同意請勿任意轉載、轉錄。
    1) 前往Discuz!官方提供的網址下載Android源碼,載點:https://github.com/Comsenz/Discuz-Android
    或下載我們2019/09/10備份的原始碼,將其解壓後即可得到Github上下載的原始碼。( 20190910.part1.rar 20190910.part2.rar 20190910.part3.rar 20190910.part4.rar )

    Android-1.png

    2) 透過解壓縮工具進行解壓縮,得到此內容。

    Android-2.png

    3) 開啟「Android Studio」應用程式。

    Android-3.png

    4) 點選「Open an existing Android Studio project」→「Discuz-Android-master」,尋找路徑並開啟Android Studio專案檔。

    Android-4.png

    5) 開啟專案檔後將取得此畫面。

    Android-5.png

    6) 由左邊進入「app」→「build.gradle」雙擊兩下開啟。
    6.1) 這裡修改幾個地方,應用程式專有ID、應用程式版本與打包時名稱...等。
    6.1.1) 「applicationId」:18行:應用程式專有ID
    6.1.2) 「versionCode」:22行:主要是用於版本升級所用,是INT類型的,第一個版本定義為1,以後 遞增,這樣只要判斷該值就能確定是否需要升級,該值不顯示給用戶。
    6.1.3) 「versionName」:23行:這個是我們常說明的版本號,該值是個字符串,可以顯示給用戶。
    6.1.4) 「buildTypes/release」:38行:打包時的名稱

    Android-6.png

    7) 由左邊進入「app\src\main\java\cn\tencent\DiscuzMob\net\A ppNetConfig.java」雙擊兩下開啟。
    7.1) 這裡修改幾個APP應用配置,以方便應用程式連接論壇。
    7.1.1) 「BASE_ADDRESS」:9行:論壇網址

    Android-7.png

    8) 由左邊進入「app\src\main\res\values\string.xml」雙擊兩下開啟。
    8.1) 這裡修改幾個APP語言配置,可依照所屬區域語言進行調整。
    8.1.1) 「app_name」:2行:應用名稱
    8.1.2) 「app_desc」:3行:應用名稱(不確定用於何處?)
    8.1.3) 「copyright」:4行:版權
    8.1.4) 「其他」:請依照所發表區域語言進行調整與修改

    Android-8.png

    9) 檔案總管進入「app\src\main\res\drawable-xhdpi」。
    9.1) 圖示可由此修改,包含「drawable-hdpi」、「drawable-xhdpi」、「drawable-xxhdpi」三個資料夾內。
    Android-9.png
    簽名生成與應用建置
    貼心提醒:使用自己簽名檔案者,請由第10步驟往下操作;反之,使用Discuz!提供簽名者,請跳至第1 5步驟繼續操作。

    10) 點選上方狀態列「Build」→「Generate Signed Bundle / APK...」進行簽名產生

    Android-10.png

    11) 來到畫面,選擇簽名方式,分為兩種:「Android App Bundle」與「APK」,我們這裡採用「APK」方式進行。

    Android-11.png

    12) 如果已經有「.jks」可以直接採用原先設置進行匯入。
    這裡,我們假定還沒有資料,點選「Create new...」進行建立。

    Android-12.png

    13) 依照圖片備註依序填入資料。

    Android-18-補.png

    14) 「Build Variants」選擇建構變數、「Signature Versions」選擇要簽名的版本並打勾。

    Android-13.png

    15) 已經有「.jks」後,我們就依照下圖進行配置。

    Android-14.png

    16) 如依照第10步驟生成者,請輸入當初填寫的資料。
    如採用Discuz!官方提供者,請開啟「打包签名.txt」並依照資料填入。
    「Store File」切記,請輸入完整路徑。
    「Store Password」
    「Key Alias」
    「Key Password」

    Android-15.png

    17) 完成後,可於「app\build.gradle」看到以下代碼。
    PHP Code:
    signingConfigs {
        
    release {
            
    storeFile file('完整路徑\\zhangshangluntan.jks')
            
    storePassword 'zhangshangluntan'
            
    keyAlias 'zhangshangluntan'
            
    keyPassword 'zhangshangluntan'
        
    }

    Android-16.png

    18) 確認完成後,將要簽名的配置輸入於專案中,如下圖操作。

    Android-17.png

    19) 根據上一步驟完成後,會於版本號下方多出一行配置資料。
    PHP Code:
    signingConfig signingConfigs.release 
    Android-19-補.png
    檔案生成與簽名

    20) 確認無誤後,回到第10步驟、第11步驟、第12步驟,操作一次即可完成簽名並生成APK
    生成路徑:「app\release\app-release.apk」
    Android-20.png

    參考文獻
    1) 第6.1.2點與6.1.3點:versionCode与versionName的区别、应用、获取
    2) 第12點到第19點:android studio生成签名导打包的方法
    附加的文件

  • #2
    Originally posted by 柚子 View Post
    此修改方式由幻冰星空綜合論壇柚子所有,非經過同意請勿任意轉載、轉錄。
    測試機種:Google Pixel 3 XL、Android Q (Android 10)
    1) 啟動頁面
    Screenshot_1568187717.png

    2) 發現/最新
    Screenshot_1568187734.png

    3) 版塊
    Screenshot_1568187746.png

    4) 我的(未登入)
    Screenshot_1568187752.png

    5) 子版塊
    Screenshot_1568187988.png

    6) 帖子
    Screenshot_1568188231.png

    7) 登入頁面
    Screenshot_1568188239.png

    8) 註冊頁面
    Screenshot_1568188244.png

    9) 我的
    Screenshot_1568188336.png

    10) 通用設置
    Screenshot_1568188344.png

    11) 關於
    Screenshot_1568188350.png

    12) 發帖類型
    Screenshot_1568188364.png

    13) 發帖
    Screenshot_1568188368.png
    Screenshot_1568188466.png

    14) 回帖
    Screenshot_1568188565.png


    轉載請經授權後並附上原文來源

    評論


    • #3
      谢谢你 TedSky,只是帖子页面乱码该如何解决呢? 还有,API你没有提起啊,容易让大家走弯路,毕竟马大哈还是很多的 乱码问题盼复。

      評論


      • #4
        好像你的教程不详细,按照你的上述操作还是各种问题,能给我发一份详细的吗? 我是网络菜鸟,所以才真心求教。麻烦你了,谢谢。

        評論


        • #5
          Originally posted by tkrecn View Post
          谢谢你 tedsky,只是帖子页面乱码该如何解决呢? 还有,api你没有提起啊,容易让大家走弯路,毕竟马大哈还是很多的 乱码问题盼复。
          api串接與應用,就要去研究了,我個人沒有研究到那邊。

          Originally posted by tkrecn View Post
          好像你的教程不详细,按照你的上述操作还是各种问题,能给我发一份详细的吗? 我是网络菜鸟,所以才真心求教。麻烦你了,谢谢。
          教學已經是依照我個人從一開始設定去撰寫。我能正常使用成功,應該教學是沒有問題的!
          你是哪個方面出問題?可以提出一起研究...

          評論

          Working...
          X