从抓包到上架 Google Play Store 做一个 App 是怎样的体验?

栏目: Android · 发布时间: 5年前

内容简介:Readhub 是一个专注于科技新闻实时分享的网站,从一开始发布到现在一直都是我获取信息的重要渠道,目前只有网页端和小程序可用,一次偶然的灵感让我决定自己做一个客户端。想要获取数据,首先要知道获取数据的 API,在没有任何官方文档的前提下,只有抓包能够解决这个问题。工具:

Readhub 是一个专注于科技新闻实时分享的网站,从一开始发布到现在一直都是我获取信息的重要渠道,目前只有网页端和小程序可用,一次偶然的灵感让我决定自己做一个客户端。

第一步:抓包

想要获取数据,首先要知道获取数据的 API,在没有任何官方文档的前提下,只有抓包能够解决这个问题。

工具: Fidder 4

使用方法: Fiddler - 超好用的http抓包 工具 使用介绍

抓包结果:

public static final String HOST = "https://api.readhub.me/";

// 热门话题列表
@GET("topic")
Observable<DataListBean<TopicBean>> getTopicList(
        @Query("lastCursor") Long lastCursor,
        @Query("pageSize") int pageSize
);

// 其它模块新闻 type
public static final String TYPE_NEWS = "news";// 科技动态
public static final String TYPE_TECHNEWS = "technews";// 开发者资讯
public static final String TYPE_BLOCKCHAIN = "blockchain";// 区块链快讯
public static final String TYPE_JOBS = "jobs";// 招聘详情

// 其他模块新闻列表
@GET("{type}")
Observable<DataListBean<NewsBean>> getNewsList(
        @Path("type") @Constants.Type String type,
        @Query("lastCursor") Long lastCursor,
        @Query("pageSize") int pageSize
);

// 即使查看
@GET("topic/instantview")
Observable<InstantReadBean> getTopicInstantRead(@Query("topicId") String topicId);

// 话题详情
@GET("topic/{topic_id}")
Observable<TopicDetailBean> getTopicDetail(@Path("topic_id") String topicId);

// 相关话题
@GET("topic/related")
Observable<List<RelevantTopicBean>> getRelateTopic(@Query("entityId") String topicId,
                                                  @Query("eventType") int eventType,
                                                  @Query("order") long order,
                                                  @Query("t") long timeStamp);

// 最新消息
@GET("topic/newCount")
Observable<NewTopicCountBean> getNewTopicCount(@Query("latestCursor") Long lastCursor);
复制代码

第二步:开发

特点

  • 采用 Google Material Design 风格
  • 采用 MVP + dagger 2 架构进行解耦
  • 网络请求使用 Retrofit + RxJava
  • 本地数据库采用 Room + RxJava
  • 主题切换,支持夜间模式
  • 集成 Tinker 并支持应用内更新
  • 侧滑返回
  • 支持 CustomTabs
  • 新话题悬浮提示
  • 使用矢量图减少安装包体积

项目预览——夜间模式

起始页 主菜单 首页
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?
即时查看 话题详情 文章网页
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?
本地搜索 设置 关于
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?

项目预览——蓝色主题(默认)

起始页 主菜单 首页
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?
即时查看 话题详情 文章网页
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?
本地搜索 设置 关于
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?
从抓包到上架 Google Play Store 做一个 App 是怎样的体验?

使用到的第三方开源库

项目名称 简介
RxJava 一个专注于异步编程与控制可观察数据(或者事件)流的 API
RxAndroid 在 Android 中使用 RxJava
Retrofit HTTP 请求工具库
ButterKnife 强大的注解框架,提供视图和事件绑定
Dagger 依赖注入框架
Fragmentation 强大的 Fragment 管理库
ExpandableLayout 支持展开和收缩子 View 的 Layout
FlowLayout Android 流式布局,支持单选、多选等,适合用于产品标签等
leakcanary 使用于 Android 和 Java 和内存泄漏检查工具
AgentWeb Android WebView 框架
Android-HeaderAndFooterRecyclerView 支持添加头部和尾部的 RecyclerView
Android-Debug-Database 用于调试 Android SQLite 和 Shared preferences 的库
Bugly 帮助开发者快速发现并解决异常,同时掌握产品运营动态,及时跟进用户反馈
Tinker Android 热修复解决方案,支持 dex,library 和资源更新且不用重新安装 app
walle Android Signature V2 Scheme 签名下的新一代渠道包打包神器

使用到的工具/网站

网站名称 简介
Iconfont 阿里巴巴矢量图标库,提供了本项目中的大部分矢量图
aconvert 在线调整图片大小(PNG, JPG 和 GIF)
convertio 在线图像文件转换器,支持 SVG 转换成 PNG
logoko 在线 logo 设计
图帮主 在线平面设计
shields metadata 图标设计
compresspng 在线压缩 PNG 图像

感谢

第三步:申请各大应用市场的开发者账号

要上架到应用市场,必须要申请相应平台的开发者账号,目前国内主流的应用市场开发者账号申请地址如下:

  • Google Play (注册需要绑定一个可用于境外支付的信用卡,费用是 29 美刀)
  • 豌豆荚、PP 助手、YunOS 应用商店等 (首先需要实名认证,然后需要申请 App 的软件著作权或者上传一份开发者声明,本 App 因为该平台不允许个人上架新闻类应用被拒绝。。。)
  • 腾讯应用宝(实名认证 + 软件著作权)
  • 酷安市场(之所以叫酷安,是因为他们只接受比较库的应用,再次被拒绝。。。)
  • 小米应用市场(实名认证 + 。。。)

以上所述就是小编给大家介绍的《从抓包到上架 Google Play Store 做一个 App 是怎样的体验?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Algorithms to Live By

Algorithms to Live By

Brian Christian、Tom Griffiths / Henry Holt and Co. / 2016-4-19 / USD 30.00

A fascinating exploration of how insights from computer algorithms can be applied to our everyday lives, helping to solve common decision-making problems and illuminate the workings of the human mind ......一起来看看 《Algorithms to Live By》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器