查看原文
其他

回顾一个新闻App的诞生

jzman 躬行之 2022-08-26

前段时间一直在做一个新闻 App,主要是针对政策资讯相关的,它的主要功能使收集各个地区的政策信息,使每一个创业者能够通过手机快速查询相关的政策信息,可以选择订阅自己感兴趣的政策来源,每天实时推送对你匹配度最高的 10 条政策资讯,以便更好的借助相关政策福利来发展自己的企业。这个项目主要是帮助创业者申报合适的政府补贴,以及提供一系列的政策解读相关的服务,当然这些服务不是客户端来做的,而是由公司来运营管理。

刚开始觉得新闻 App 比较简单,不就是服务器抓取相关新闻信息,然后将其显示在 WebView 就行了,实际是也就是这个样子,但是在实现过程中还是遇到了很多问题,比如类似于今日头条频道管理的实现、叠楼式评论的实现等还是花费了不少时间,在解决问题的同时也踩到了新的坑,这些相关的知识点会在以后以博客的形式整理出来分享给大家。

提到新闻资讯的相关的 App,大家肯定会想到今日头条、一点资讯等这些内容运营平台,这些平台的大部分内容都是自家签约作者创作的内容,不管创作内容的质量如何,至少有一点可以保证,它的大部分内容是按照固定格式提交给这些自媒体平台,如今日头条的头条号、一点资讯的一点号,由于大部分内容格式的确定就能够保证在移动端完美的显示,不需要进行格式的调整,当然也有从其他网站上抓取的新闻资源,为了整个移动端保持整体显示风格,就需要对第三方的新闻资源进行格式的调整 。这就面临一个问题,如何将第三方新闻资源嵌入自家的 APP 且保持文章风格一致呢?这个过程说起来也不是很麻烦,主要就是借助创建一个文章详情页模板将内容填充进来就好了。

由于这个项目的数据全是由爬虫从各个地方政府网站采集数据,抓取的数据没有进行一定的处理,全是带有 HTML 标签的数据,有的数据甚至连 HTML 标签都不是一一对应的,导致某些 HTML 标签的尖括号显示一半在界面中,这个就比较尴尬了,面对这些带有 HTML 标签的数据只能硬着头皮做界面适配,虽然知道一点 CSS 相关的前端知识,但是不足以快速解决这个问题,刚开始的思路是替换这些 <p> 、<span> 等中的内联样式,将这些样式重写成合适的样式,这样做了发现有效果,以为这样做可以解决问题,于是就做其他的页面了。

后来出现了很多问题,比如文章中可能会有表格,会把页面撑宽,导致文章详情页可以左右滑动,这肯定会影响浏览效果,总之这种方式比较 Low。由于之前的文章分享页面直接分享的网站上的文章页面,比如将某篇文章分享到微信,打开跳转到网站,然后才进入文章详情页,有时候还得登录才能查看,这样从用户角度确实不好。于是决定干脆写一个独立的 H5 页面,直接在这个页面中请求数据,然后将这个页面挂载在域名下,既可以做分享页面,又可以拿来做文章详情页。想法虽好,但是最重要的还是实践,那就开始学着写一点前端页面吧。

选择一款还算友好的编辑器 HBuilder,我比较喜欢这个编辑器的预览效果,顺便提一下 HBuilder 可以用来创建移动 App,主要用于使用 MUI 框架来开发跨平台应用,当然也可以选择来开发 H5 页面。这个就不多说了,这个界面就是几个 div ,分别显示文章题目、来源、发布时间以及文章详情,再者就是使用 ajax 来请求网络数据,关键一点就是 CSS 的样式配置,这里涉及的知识点主要就是 关键字的使用、Viewport 的使用以及 CSS 媒体查询相关的知识点。

对我而言,这个项目中遇到了很多新东西,这里就不在赘述了,在解决问题的过程中最重要的就是思路和实践,先整理思路,然后去具体的实现,最后去验证结果是否满足要求,还有一点就是记得总结工作中遇到的问题,尽量在自己的知识库中寻找答案,而不是每次都去百度、Google,相信自己,继续努力!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存