近期工作上需要对产品各个网站的指标数据录入到EXCEL分析,包括各个国家及总览的相关数据。每天手工处理的话,量大且易错,青光眼说不定都会看出来。本身是从事产品经理方面的工作,想自己做这件事于是就用到以前熟悉的C#来开发一个简单的客户端支撑这个需求。上个月的工作时间外断断续续完成了这套客户端,其中踩过的坑、趟过的水都汇集再一起总结一下,未来哪天说不定用得上,也为大家排排雷。
自我对UWP的浅显历程:
1)选择UWP去实现这个需求也没多想,当时想通过客户端弄个小白式操作的产品,于是对标WIN10 计算器以UWP为最终操作框架。后来发现UWP真是限制多呀。。。只能操作指定位置的文件、基于.net core有些framework上的方法会出现迷之错误、想类似控制台一样拿到其他电脑就可以使用,还需要一些简单得打包、认证操作
2)最初用控制台做业务逻辑,最后形成dll引用给UWP。但是当时创建控制台的时候是.net framework,但UWP是基于.net core。这下就无语了,我强行把.net framework换成.net core后各种奇葩事情就出来了,后来了解到UWP的说明,什么webrequest要换成webclient、microsoft自带的excel组件操作无效换了个第三方组件EPPLUS,结果一些细节处理上两者有异要做调整。搞得绕了多大一个弯。。。
3)搞不懂的方法先微软官网走一波,各类讲解挺全,跟C端产品引导新用户的教程颗粒度相当
4)家里4K屏幕做的客户端界面,放到公司里打开瞬间就SB了。。。界面是我像AXURE原型一样拖上去的!自适应什么的没有花精力去弄,后面简单调到了2K的合适显示界面。应该只有我这种门外汉才会犯这错的
最终产品:
业务简介:
(1)MarketAssassin我随便取的产品名字,代表它可以像刺客一样很方便的拿到数据(虽然拿的是自己产品数据)
(2)国家数量代表对应平台要写入哪些国家,游戏数量代表这个APP每个端就是一个游戏,字段数量就是要一次要写入的列数量
(3)时间输入项代表用户需要获取、写入哪一天的数据
(4)扫描输入项代表要读取的EXCEL或者要爬取网站的cookie
(5)EXCEL输入项代表要写入的EXCEL
(6)Admob选择框代表平台列表(多个平台均有记录游戏指标,皆需收集)。选中项即按钮执行时对应的平台
(7)底部Ready for battle就是操作结果的呈现,执行成功会提示录入了多少数据,失败则会将封装的异常抛出来,供我们改进
点击按钮后的一句话概括:我要把这个平台再这个时间段的指标数据写到指定文件里。
具体实现请参考下列章节: