聚合了博客园新闻、infoq新闻、36kr新闻、oschina新闻、51cto新闻、csdn新闻;

争取做到随时刷随时有开发者的新闻!

目前还只支持安卓APP

但用的人多了,我会发布苹果版的APP

最新版本的下载地址:http://shumanu.com/DeveloperNews.apk

开源代码的地址(包含采集程序、守护程序、APP客户端和WEB服务端):https://github.com/xland/DeveloperNews

扫码下载:

来看看系统截图:

这次更新的主要内容有:

一个屏幕只显示一条新闻;并且字体加大,方便用户在公车上刷新闻,(这样就不会晕车了!亲测!)

向上滑动家在更多新闻,向下滑动刷新新闻!

只提供了用系统浏览器打开新闻正文的功能!

去掉了用不到的权限!

修改了升级逻辑

升级部分的关键代码:

(正如你所见,客户端是JS写的,全部代码去GITHUB上看吧)

function updateAndroid(fPath) {
    var date = new Date().getTime();
    var fileN = "";
    fileN = "_doc/dn_" + date + ".apk";
    var options = {
        method: "GET",
        filename: fileN
    };
    var watiting = plus.nativeUI.showWaiting("开始下载:0%");
    var dtask = plus.downloader.createDownload(fPath, options);
    dtask.addEventListener("statechanged", function(task, status) {
        if (!dtask) {
            return;
        }
        switch (task.state) {
            case 1: // 开始
                break;
            case 2: // 已连接到服务器
                break;
            case 3: // 已接收到数据
                var nowData = Math.floor(task.downloadedSize * 100 / task.totalSize);
                if (nowData % 10 == 0) {
                    watiting.setTitle("已下载:" + nowData + "%");
                    if (nowData == 100) {
                        plus.nativeUI.toast("正在准备环境,请稍后!");
                        plus.runtime.openFile(dtask.filename);
                        plus.runtime.quit();
                    }
                }
                break;
            case 4: // 下载完成
                break;
        }
    });
    dtask.start();
} function checkVersion() {
    mui.get(baseUrl + '/Default.aspx?Action=CheckVersion', {}, function(data) {
        if (data != plus.runtime.version) {
            plus.nativeUI.confirm("有新版本,是否更新?", function(msg) {
                if (msg.index == 1) {
                    if ('iOS' == plus.os.name) {
                        plus.runtime.openURL(baseUrl + "/update/ios.aspx");
                    } else {
                        updateAndroid(baseUrl+"/DeveloperNews.apk");
                    }
                }
            }, "友情提醒:", ["取消", "确定"]);
        }
    });
}

webservice的代码页有更新,如下:

var pageSize = 8;
var Index = Request["Index"];
if (string.IsNullOrWhiteSpace(Index))
{
    Index = "0";
}
var start = Convert.ToInt32(Index);
var dbFactory = new OrmLiteConnectionFactory(ConfigurationManager.AppSettings["dbConnStr"], MySqlDialect.Provider);
var db = dbFactory.Open();
List<allen_news> obj;
if(start == 0)
{
    obj = db.Select<allen_news>("select * from allen_news order by news_id desc limit 0,"+(pageSize*2).ToString());
}
else
{
    obj = db.Select<allen_news>("select * from allen_news where news_id < "+start.ToString()+" order by news_id desc limit 0," + pageSize.ToString());
}
db.Close();
db.Dispose();
if (obj.Count < 1)
{
    Response.Write("Sorry...我们不打算把不算“新”闻的内容提供给您,您收藏的内容可以在“我的收藏”中找到。");
    Response.End();
    return;
}
Response.Write(JsonConvert.SerializeObject(obj));
Response.End();

喜欢的朋友请帮忙点个推荐,或者到github上给我一颗星星,谢谢!

【开源】开发者新闻聚合APP 2.0.3发布(第二个稳定版本)的更多相关文章

  1. 【开源】开发者新闻聚合APP 1.0.3发布(第一个稳定版本,短期内不再发布新版本)

    聚合了博客园新闻.infoq新闻.36kr新闻.oschina新闻.51cto新闻.csdn新闻: 争取做到随时刷随时有开发者的新闻! 目前还只支持安卓APP 最新版本的下载地址:https://gi ...

  2. 灵雀云开源网络插件Kube-OVN 1.4.0 版发布!支持跨集群容器网络、NetworkPolicy 日志

    从 1.4 开始 Kube-OVN 支持将多个 Kubernetes 集群容器网络打通,不同集群之间的 Pod 可以通过 Pod IP 直接互相通信.本版本还支持 ACL 日志,可以记录因 Netwo ...

  3. PHP 7.3.0.beta3 发布,下个版本将进入 RC 阶段

    PHP 7.3.0 第三个测试版 beta3 已发布,源码下载地址 >>> https://downloads.php.net/~cmb/ 更新内容如下: - Core: . Fix ...

  4. Spring Mobile 1.1.0.RC1 和 1.0.2 发布

    Spring Mobile 1.1.0.RC1 发布了,该版本包含: 支持 Firefox OS 设备的检测 修复了使用 LiteDeviceDelegatingViewResolver 处理重定向和 ...

  5. FreeBSD 12.0 版发布

    FreeBSD 是一个自由且开源的类 Unix 操作系统,是 BSD Unix 的直系继承者.起始于 1993 年,FreeBSD 拥有悠久的历史与诸多衍生版本.其饱经考验,是最广泛应用的开源 BSD ...

  6. fir.im Weekly - 关于 Log Guru 开源、Xcode 探索和 Android7.0 适配

    本期 fir.im Weekly 整理了最近的一些技术分享,包括关于 Log Guru 开源.Xcode 探索. Android7.0 适配等等 iOS/Android 相关的工具.源码分享和技术文章 ...

  7. 几款开源的hybird移动app框架分析

    几款开源的Hybrid移动app框架分析 Ionic Onsen UI 与 ionic 相比 jQuery Mobile Mobile Angular UI 结论 很多移动开发者喜欢使用原生代码开发, ...

  8. PYTHON:新闻聚合

    这个项目看了有段时间,因为一直没跑通,而且关于NNTP也不是特别理解.这里是转载code123的分析. 原文地址:http://www.code123.cc/1327.html 书中的第四个练习,新闻 ...

  9. 开源整理:Android App新手指引开源控件

    开源整理:Android App新手指引开源控件 一个App第一次与用户接触或者发生大版本更新时,常常会用户进行新手引导,而一个好的新手指引,往往能够方便新用户快速了解操作你的应用功能.新手指引的重要 ...

随机推荐

  1. Bootstrap 模态框 + iframe > 打开子页面 > 数据传输/关闭模态框

    父页面bootstrap模态框: <div class="modal fade" id="myModal" tabindex="-1" ...

  2. Sql Server 行转列

    --摘自百度 PIVOT用于将列值旋转为列名(即行转列),在SQL Server 2000可以用聚合函数配合CASE语句实现 PIVOT的一般语法是:PIVOT(聚合函数(列) FOR 列 in (… ...

  3. RHEL7学习之NTP配置

    一,安装NTP [root@localhost ~]# yum install ntp Loaded plugins: product-id, subscription-manager This sy ...

  4. tomcat监控

    参考:http://www.linuxidc.com/Linux/2012-11/74003.htm #!/bin/sh monitorlog=/opt/tomcat7/logs/monitor.lo ...

  5. Hadoop2.6.0的事件分类与实现

    前言 说实在的,在阅读Hadoop YARN的源码之前,我对于java枚举的使用相形见绌.YARN中实现的事件在可读性.可维护性.可扩展性方面的工作都值得借鉴. 概念 在具体分析源码之前,我们先看看Y ...

  6. (Python)继承

    面向对象的另一个特性是继承,继承可以更好的代码重用. 例如一个学校里面的成员有老师.学生.老师和学生都有共同的属性名字和年纪.但老师还有它自己的属性,如工资.学生也有它的属性,如成绩. 因此我们可以设 ...

  7. 复合梯形公式与Simpson公式的数值积分

    #include <iostream>#include<math.h>#include<stdio.h>using namespace std; float f(f ...

  8. 验证radio 是否被选中

    var radioType=document.getElementsByName("radioType");    var isCheckRadio=false;    for(v ...

  9. 计算机网路之动态NAT配置

    配置路由端口的ip地址与打开(省略) 配置路由协议 router eigrp 100 network 211.1.1.0(网络号) 0.0.0.255(通配子掩) network 192.168.1. ...

  10. css让元素居中显示

    通常在absolute之后, 想让元素居中,都会采用margin-top:-[元素高度的一半]和 margin-left:-[元素宽度的一半] ,  但是当我们的元素宽高不是固定的时候, 这就难办了, ...