日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

个人从零开发一款 Android 应用、上线并盈利 | 项目复盘

發布時間:2024/3/24 Android 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 个人从零开发一款 Android 应用、上线并盈利 | 项目复盘 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近個人開發的一款應用 言葉 剛剛發布了 1.4.0,至此,我想要開發的大部分功能已經完成了。本來我也想做一次復盤,剛好趁這個機會分析下并發出來。在這篇文章中,我想分析的并不僅僅是技術,除此此外,我也會分析下這個產品、開發過程中有哪些做得好和不好的地方以及接下來的打算。

1、項目背景

這個應用是一款筆記應用。其實,一開始要做它,我也是拒絕的。

因為我覺得這類應用門檻和天花板都比較低,同類和類似的應用都比較多,花費功夫做一個收益也不會太大。后來打算做是出于幾個原因:

  • 第一,我大概寫了三周的電商爬蟲并部署到三臺服務器上,Python 寫得有點吐,想換個心情寫寫 Kotlin;
  • 第二,對于很多互聯網項目,在項目初期是很難盈利的,而達到收支平衡更需要一定的時間,所以我就想開發一款應用賺點“快錢”;
  • 第三,我前些時間又翻了翻周鴻祎的互聯網方法論,其中有說到,如果一個項目能夠解決幾個用戶痛點就值得做,我深以為然,于是就設計并開發了這個應用。
  • 這個應用所解決的用戶痛點是,跨平臺寫作的問題。的確,有很多筆記應用是可以跨平臺的,但是這類筆記一般收費比較高而且對開發者來說回報也不高,比如印象筆記、有道筆記等。這類應用存在一個問題,他們的文件格式基本是自己定義的,因此就不容易做到通用。而如果我使用 Markdown 語法以文件目錄形式管理筆記,使用相對目錄在筆記內部進行文件引用,同時提供云同步來實現多端協作。那么我就可以做到:

  • 首先,解決了用戶多端寫作的問題,畢竟移動端編輯不方便,我們可以在編輯完成之后將筆記同步到手機上,進行閱讀、校對或者繼續編輯等。
  • 其次,通過內容和管理方式的規范,我就沒必要編寫其他平臺(比如 PC 或者 iOS)的客戶端了。畢竟術業有專攻,就算我開發一個其他平臺的應用,不熟悉環境不說,用戶體驗也不見得比現有的好。
  • 最后,用戶可以通過 WebDAV 或者其他手段進行數據同步,那么我就沒必要自己搭建服務器存儲用戶的筆記數據了。
  • 基于以上幾點以及之前的技術沉淀,我估摸著就算開發一個也不會花費太長的時間。最后,從設計、開發(客戶端+服務器)用了大概一個多月的時間。不過,隨后我發現隨著自己想做的事情越來越多,就又投入了幾個月進去。當然,這個應用一上線就有用戶購買的,這有幾個原因:

  • 第一當然是應用本身的設計。因為之前我也開發過一款類似的開源應用,對用戶的需求以及同類的產品比較熟悉,那么,在他們之上結合我自己的 UI 設計理念和對用戶痛點的把握,不論應用性能還是外觀做得都不錯。
  • 其次,購買我的產品的用戶大多來自于某平臺,這個平臺具備一定的社交屬性,而我有不多的關注,這使得我的產品一上線就有受到一定的關注。這也說明,通過粉絲或者其他途徑(做自媒體等),維護一個個人的品牌對開發者或者創業者來說好處是非常多的。
  • 2、實踐經驗

    因為項目本身是個人開發,所以我負責了從 UI 設計到產品到客戶端到后端以及部分網頁的所有工作。

    2.1 UI 設計

    對于應用的 UI 設計,因為這次開發寫得非常順,所以所有的 UI 都是打腹稿完成的。當然,也會借助手繪來梳理 UI 和業務邏輯,有時候也會直接使用產品原型工具,比如 Axure,直接繪制產品原型。使用產品原型工具好處是,可以直接預覽設計效果,不好的地方是,因為本身只是個人開發,產品原型更多的是設計和開發之間交流的工具,省略了這個步驟可以減輕開發的難度。

    對于圖標、應用內部的圖片選擇則是我通過其他網站精心挑選的。這并不容易,尤其是你對應用細節有要求的時候。下面是我常用的一些免費網站,

    • Icons8:免費,用來獲取應用內各種圖標,這個網站對圖標的設計風格都有所區分
    • Unsplash:免費,可以用來下載免費的壁紙和應用內部的圖片等
    • Dribbble:設計師常逛的網站,可以用來捕捉一些設計靈感
    • 以及兩個用來下載 PNG 圖片的網站:pngtree 和 cleanpng,這兩個國外的網站,還是很良心的,可以免費下載,使用 PNG 之后我們只需要通過組合就可以設計出好的應用宣傳圖了

    關于應用的 UI 設計的一些總結:

    • 圖標風格要統一,比如如果用 Material Design 風格,那么應該全部統一成 Material Design 風格;如果 Material Design2 風格,就應該全部統一成 Material Design2 風格的圖標。對于圖標的設計風格,Icons8 網站里都會有對應的區分,自己選擇下載即可。
    • 對于應用的宣傳圖,我目前上架的所有的市場都要求尺寸為 1080*1920,所以按照這個尺寸設計即可。另外,個別商店要求如果宣傳圖里面有手機外殼,要用自家的手機,所以設計的時候不加外殼就可以了。
    • 其他的還有一些,一時想不起來了,以后慢慢補充吧。

    2.2 客戶端

    1. 開發工作

    客戶端部分主要包含客戶端業務邏輯開發、客戶端底層加密以及筆記瀏覽器樣式定制幾個部分的工作。

    對于客戶端業務邏輯,使用 Kotlin 開發即可。因為我經常開發自己的應用,為了避免經常 Copy 各個模塊,所以開源了很多的框架。也是借助于這些框架,才使得我能夠快速開發并上線一個應用。經過這個項目以及其他項目的迭代,我逐漸將一些具備通用性的設計沉淀到了底層的庫中,也使得這些庫能夠不斷開發完善。對于客戶端部分,我之前很多文章介紹過這些庫以及如何提升開發效率的方法了,這里不多說了,感興趣的看之前的文章即可。

    對于底層加密部分,主要使用 C++ 在加固之上繼續做應用的加密、用戶購買和會員信息加密以及與服務器通信加密等。之前我有一款應用,加固,上線,之后被別人破解。然后,我自己根據逆向的結果增加了一層安全措施。這個我之前也分析過,這里不多寫了。當然,之前的文章里面也會有所保留,畢竟寫出來了就相當于把自己的安全方案說出來了。對于應用與后端通信加密,這個容易理解,就是說,通信的時候通過客戶端和后端的約定規則,如果客戶端的參數不符合這個規則,后端就拒絕處理。為了安全性考慮,這部分邏輯當然最好通過 native 的 C++ 來完成。

    而對于筆記瀏覽器配置,因為我使用 WebView 展示解析后的 Markdown 結果,因此客戶端部分要做些 CSS 和 JavaScript 完成對筆記瀏覽器樣式的定制。這里目前用到的還只是比較基礎的 JS 和 CSS 知識,以為了增加更多的 features 可能會增加更多的功能。

    之前的相關的文章鏈接如下。因為之前寫得比較多了,這里就不啰嗦了:

    • 擁抱新的交互方式,在 Android 中應用 MVVM
    • 個人開源庫的一些更新,兼談Jetpack和Kotlin給Android開發帶來的變化
    • 2020 年,我這樣在項目中使用 MVVM
    • 加固了就安全了?幾個措施讓你的 Android 應用更安全

    2. 其他的

    這里稍微介紹下客戶端開發之外的工作——用戶統計。我在應用內部用戶信息統計和埋點使用的是友盟的 SDK. 之前我更多用 Twitter 的 Fabric. 不過后來被整合到 Google 的 Firebase 之后就沒有再用過。友盟是免費的,不過確實存在一些問題:

  • 有時候崩潰上報不上來,為此我當時甚至一度開始考慮自己設計崩潰日志上傳的系統。
  • 用戶新增統計也不完全準確,跟我后臺統計存在偏差。
  • 不過整體而言友盟還是值得一用的,它還是可以大致描繪用戶信息,這便于以后做用戶畫像,并根據統計信息進一步優化自己的應用。

    如果你打算開發一款自己的應用的話,我覺得信息統計和用戶行為埋點還是值得一提的,因為一個產品的成功不僅僅是把產品開發和上線就為止了的,很多時候一個產品的成功取決于運營的工作。

    此外,這個應用還用到了我的多語言翻譯等各種工具。也可以這么說吧,按照我的習慣,一個工作重復三次以上就應該考慮使用工具來優化了,畢竟我們是程序員,程序員怎么能做程序的工作呢?

    2.3 后端開發

    后端的工作包括通用服務器開發和服務器運維兩個部分。

    1. 服務器開發

    為什么開發這個通用服務器呢?因為當時我手上還有三臺服務器,兩臺中等配置的,一臺期限比較長,另一臺是為另一個項目準備的,還有一臺是新用戶服務器。所以,為了充分利用這臺期限較長的應用,我準備開發一臺通用服務器,即為我現在已經將來要開發的應用提供基礎服務。比如用戶反饋收集、應用配置定義和個性化的下發、設備管理、用戶管理、圖床以及將來也可以考慮集成一些有趣的功能進來等等。

    當然,在開發這個應用之前我也是做了技術調研的。因為我之前就有計劃開發幾個應用,將來還可能開發更多。畢竟,有技術,有想法,看到一些好玩的東西,總是手癢,按捺不住要做一個的沖動。所以,當時微服務架構比較火,我對此也做了調研。不過,最終我沒用采用微服務,而是設計成單體的應用。因為,顯然的,架構的設計不僅和要做的事情相關,跟自己當時的實際情況也相關的,當然還要考慮將來的拓展。而以我目前的形狀而言,我只有一個人開發,因此采用微服務和管理微服務都會增加成本。另外,對于微服務的部署問題,我當然不會購買更多的服務器來支持微服務。而所謂的微服務還是單體,無非就是看你從哪個維度來進行劃分:

    功能 1 功能 2 功能 3 應用 1 ----+-----------+-----------+-------------> 應用 2 ----+-----------+-----------+-------------> 應用 3 ----+-----------+-----------+------------->

    如上所示,簡單理解:如果你從功能模塊角度劃分,這就是微服務;如果你從應用的角度劃分,這就是一個個單體。不過我是將所有的應用通過一個單體維護的,這還是跟當前實際情況相關:新用戶的用戶量不大,沒必要各自單獨開發一個應用,并且個人維護多個應用和服務器成本比較高,而假如某一天某個應用用戶數量增多,這當然是一種幸福的煩惱,此時可以將數據遷移出來單獨開發和優化。

    后端開發相關的文章我之前也寫過,自己看往期的文章就好了:

    • 從零搭建基于 Java 的服務器生產環境
    • 為你的應用集成谷歌結算(客戶端集成+服務端校驗)

    當時因為要支持國際化,所以為了做系統設計還是花費了些功夫,要導致工期稍微長了一些。我個人覺得這個服務器設計還是很妙的,比如可以給指定的用戶發送消息,雖然不是即時消息,但這便于將一些信息傳遞給用戶,將來也可以借助它設計運營和推廣活動。以后做用戶增長的話,我也可以在這個服務器上面做些工作,來輔助進行用戶畫像。

    2. 服務器運維

    既然搭建一個服務器,那么服務器安全問題自然是不容忽視的。對于服務器,一方面要通過各種配置增加服務器的安全性,這包括修改各種常用端口,修改 rm 指令等。此外,還需要使用 cron 任務做 MySQL 和 Redis 數據庫的定時備份等等。

    這方面好在我之前搭建服務器的時候就整理了很多的筆記,所以,才能夠做到每次搭建服務器的時候能夠快速完成:

    2.3 產品

    雖然我工作是程序員吧,但我對產品的興趣不亞于代碼。最初我選擇這個行業也是希望有一天能夠做出來自己的產品。當初剛畢業的時候還陰差陽錯地差點做了產品……不過,我希望自己開發自己的產品,至少目前是這樣(出于成本、風險和興趣的考量)。

    做產品沒那么容易,我一直覺得,一般的產品經理關注的是產品本身,高級的產品經理關注的是市場。如果你對產品感興趣的話下面這些書可以幫到你:

    • 《俞軍產品方法論》:俞軍作品,沒必要多說了,大神級作品,眼界很高
    • 《幕后產品:打造突破式產品思維》,作者王詩沐,網易云音樂背后核心人物

    另外還有《增長黑客實戰筆記》、《一個廣告人的自白》和《文案訓練手冊》啥的,雜七雜八,之前看了很多,但主要分為個方向:產品、運營和市場。

    3、總結

    好吧,洋洋灑灑地寫了很多的東西,一篇文章很難面面俱到,但是梳理一下總歸有一些收獲,以后也應該多進行復盤,形成自己的方法論。下面說我覺得做得好和不好的地方以及接下來的打算。

    3.1 好的地方

    首先,在技術上,

  • 不論客戶端還是后端能夠逐漸沉淀出自己的框架,這將大大降低后續開發的成本;
  • 此外,能夠通過工具化,比如 Python 翻譯工具、自動生成代碼等,減輕開發的壓力;
  • 能夠通過開發的記錄和日志輸出文檔,為以后開發做鋪墊。
  • 在產品上,產品的 UI 設計不錯 & 能夠抓住用戶的一兩個痛點

    3.2 不好的地方

  • 仍然需要一個團隊,目前仍是孤掌難鳴的境地,假如可以各司其職,做自己擅長的領域,效果會好得多。當然,這個是不強求的,因為就目前的產品而言,上限不高。另外,我目前也沒有找到好的方向。
  • 就筆記產品而言,天花板低、門檻低、上手易、競品多 -> 行業賽道不好。
  • 產品 LOGO 設計不夠國際化(帶中文),產品定價策略可能存在問題 -> 產品調研做得不夠。
  • 追求完美的拖延癥,特別強調做事的先后順序,結果導致事情一拖再拖 -> 前期調研做充分,過程中應該增強執行力。
  • 3.3 接下來 …

    就這個產品而言,

  • 嘗試做產品推廣,結合短視頻等做下嘗試,看看效果,了解短視頻行業。
  • 利用友盟后臺統計結果,搭配自己的服務器做些配置,參考增長黑客的做法,將理論落實到通用服務器上面,做用戶畫像,分析,并嘗試做用戶增長,搭建運營系統。
  • 搭建服務器后臺管理系統(現在仍然在使用 Python 腳本和直接操作數據庫的方式變更各種配置)以充分利用服務器的能力。
  • 就個人技術提升而言,

  • 其他技術領域的拓展。單就整個前端而言,前端、小程序、客戶端,很難說哪個更好,也不存在一個替代另一個,各有各的應用場景。我們做產品的時候當然要根據產品的性質選擇對應的一端。但不可否認的是,小程序讓產品多了一個選擇,間接讓客戶端失去了部分市場。如果希望自己的職業生涯之樹常青,只做客戶端顯然是不夠的。
  • 應該對產品、運營(文案、推廣、增長等)兩塊的內容做一次梳理并逐漸形成自己的方法論。
  • 就大環境而言,

    就目前情況來看,已經到了互聯網紅利的末期,這當然不是說沒有機會,但我覺得像目前這樣淺嘗輒止肯定是不行的。白巖松有句話說,三十歲之前要努力做加法,多嘗試;三十歲之后做減法,聚焦。所以,我覺得接下來應該多嘗試和了解不同行業,然后選擇一個自己感興趣并且前景好的行業持續積累,這樣才能形成自己的競爭優勢。

    現在的確不是自己做事情的好時候,但如果換一個角度思考,正因為很多人抱著這種看法,所以這個時候競爭壓力反而小得多,反而適合好好打磨自己的產品。當然,如果成本太高的話就算了,因為現在經濟大環境確實不好,以后往左還是往右走還分不清~

    每個人身份和背景不同,看問題的角度可能不一樣,也應該多認識一些人,交換想法,這樣雙方都有收獲。所以,總結下來:多走,多看,多思考,多嘗試,多認識一些人。

    總結

    以上是生活随笔為你收集整理的个人从零开发一款 Android 应用、上线并盈利 | 项目复盘的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 国产在线高清视频 | 国产精品免费久久 | 免费毛片一区二区三区久久久 | 亚洲天堂久| 成人私密视频 | 久久成人午夜 | 免费看一级黄色片 | 国产裸体永久免费视频网站 | 午夜裸体性播放 | 久久婷婷国产麻豆91 | 性欧美69 | 国产嫩草在线观看 | 91系列在线观看 | 伊人一区二区三区 | 夜夜爽av福利精品导航 | 草草视频在线 | v888av| 潘金莲黄色一级片 | 黄色美女毛片 | 欧美又粗又长又爽做受 | 国产亚洲在线观看 | av大片在线观看 | 中文字幕在线观看精品 | jjzz日本女人 | 91视频地址 | 69xx网站| 国产网站免费 | 久久成年 | 日本公妇乱偷中文字幕 | 亚洲欧美另类在线视频 | 中国少妇高潮 | 天天做夜夜做 | 午夜福利理论片在线观看 | 免费亚洲一区二区 | 成人91免费 | 99在线国产| 久久久久无码精品国产sm果冻 | 色呦呦中文字幕 | 伊人久久久久噜噜噜亚洲熟女综合 | 玖草在线视频 | 国产在线激情视频 | 国产精品美女久久久 | 亚洲毛片在线 | 亚洲精品久久久久久无码色欲四季 | 日韩黄色在线观看 | 伊人中文字幕在线观看 | 熟女毛毛多熟妇人妻aⅴ在线毛片 | av片在线观看免费 | 国产5区 | 国内精品一区二区三区 | 成人黄色a级片 | 久久久久九九九九 | 成人在线观看黄色 | 日本一区二区视频在线播放 | 成人小说亚洲一区二区三区 | xxxx亚洲| 国产av无码专区亚洲av麻豆 | 欧美日韩一区二区精品 | 日日噜噜夜夜狠狠久久波多野 | 久久精品国产精品亚洲毛片 | 日本亚洲国产 | 奴性白洁会所调教 | 亚洲射色| 国产av无码专区亚洲a∨毛片 | 对白超刺激精彩粗话av | www五月天com | 午夜88| 国产精品无码电影 | 国产又粗又猛又爽又黄的视频一 | 高潮毛片无遮挡 | 日韩欧美中文字幕精品 | 伊人精品在线观看 | 日本在线成人 | 粉嫩视频在线观看 | 免费黄色小视频在线观看 | 免费人成网站 | 久久精品国产亚洲av嫖农村妇女 | 久久国色 | 亚洲一区二区三区四区在线观看 | 玖玖爱免费视频 | 午夜影视av| 伊人久久超碰 | 午夜精品一区二区三区在线视频 | 日韩精品久久久久久久电影99爱 | 女人十八岁毛片 | 69久久夜色精品国产69 | 日韩的一区二区 | 激情九月婷婷 | 国产精品一区免费观看 | 国产无遮挡a片又黄又爽 | 激情久久久| 捆绑裸体绳奴bdsm亚洲 | 男人免费视频 | 污视频免费在线观看 | 自拍 亚洲 欧美 | 成人免费国产 | 中国一级黄色大片 | 91香蕉视频在线 | 97人人在线视频 |