-
android安卓自动计算月份,每月更新的榜单,月份列表更新
2020-01-15 14:08:40问题:现有一个排行榜的功能,需要每月底结算当月...currentServiceTime:是接口返回的服务器时间,没用手机系统时间防止用户修改时间导致的错误 min.setTime(sdf.parse("2019年06月"));:即设置的起始时间。 pu...问题:现有一个排行榜的功能,需要每月底结算当月数据进行排名。同时可查看历史月份的排行数据,需要有一个每期的时间列表。给定功能上线时间为起始时间,上一个月为结束时间,计算之前的月份列表。
currentServiceTime:是接口返回的服务器时间,没用手机系统时间防止用户修改时间导致的错误
min.setTime(sdf.parse("2019年06月"));:即设置的起始时间。
public static ArrayList<String> getMonthBetween(long currentServiceTime) { String serviceDate = DateUtil.getDate(currentServiceTime, DateUtil.FORMAT_YYYY_MM_DD_6); SimpleDateFormat sdf = new SimpleDateFormat(DateUtil.FORMAT_YYYY_MM_DD_6);//格式化为年月 Calendar min = Calendar.getInstance(); Calendar max = Calendar.getInstance(); try { min.setTime(sdf.parse("2019年06月")); min.set(min.get(Calendar.YEAR), min.get(Calendar.MONTH), 1); max.setTime(sdf.parse(serviceDate)); max.set(max.get(Calendar.YEAR), max.get(Calendar.MONTH), 1); ArrayList<String> result = new ArrayList<>(); Calendar curr = min; while (curr.before(max)) { result.add(0, sdf.format(curr.getTime())); curr.add(Calendar.MONTH, 1); } return result; } catch (ParseException e) { e.printStackTrace(); } return null; }
-
iOS自动更新如何实现
2017-05-31 09:37:17第一种是和安卓等系统一样,获取自己服务器的APP版本号与已安装的APP版本号比较;第二种是根据已发布到app store上的应用版本号与已安装的APP版本号比较更新。第一种检测更新方法的优点是:检测更新速度快、检测稳定...APP检测更新可以使用两种方法。第一种是和安卓等系统一样,获取自己服务器的APP版本号与已安装的APP版本号比较;第二种是根据已发布到app store上的应用版本号与已安装的APP版本号比较更新。第一种检测更新方法的优点是:检测更新速度快、检测稳定;缺点是:和app store上的应用版本号不同步(app上架需要审核时间,不确定什么时候成功更新到app store上)。第二种方法检测更新方法的优点是:检测版本号是实时同步的;缺点是:苹果网络不稳定,检测更新延时严重,部分APP获取不到任何参数。第一种,只需要后台服务器根据app store上架版本号手动修改数据就行了,APP版本号格式也可以自己定义。
iOS程序自动提示更新的实现方案大致分为两种:
第一种,自己服务器提供一个接口,告知相关app的当前版本,是否需要更新,以及更新的地址等信息 。
第二种,就是利用苹果的appstore 提供的相关api进行查询更新。
由于此前没有找到iOS程序更新的方法,就用了第一种方式,但后来发现了一些问题,自己提供服务器,需要维护,程序提交更新后,由于苹果需要审核,中间会有时间差,这个时间不好把握。后台就找苹果的相关文档,终于找到了。
http://www.apple.com/itunes/affiliates/resources/documentation/itunes-store-web-service-search-api.html
实现机制:
#define APP_URL @"http://itunes.apple.com/lookup?id=你程序的appId"
ASIFormDataRequest *formRequst = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:APP_URL]];
请求网络数据,返回的大致数据如下,其他还有好多数据,我们把关键的给截取出来
{
resultCount = 1;
results = (
{
artistId = 开发者 ID;
artistName = 开发者名称;
price = 0;
isGameCenterEnabled = 0;
kind = software;
languageCodesISO2A = (
EN
);
trackCensoredName = 审查名称;
trackContentRating = 评级;
trackId = 应用程序 ID;
trackName = 应用程序名称";
trackViewUrl = 应用程序介绍网址;
userRatingCount = 用户评级;
userRatingCountForCurrentVersion = 1;
version = 版本号;
wrapperType = software;
}
);
}取得这些数据后关键的信息就是“ version”最新版本号和“ trackViewUrl”程序地址。然后与本地程序的版本比较即可。
上面的build 对应info.plist文件里的“Bundle version”字段,供程序调试用,即内部调试版本号,不是显示在appstore上面的
version 对应info.plist文件里的“Bundle versions string, short”字段,这才是真正的版本号,显示在appstore上的。由于之前学习的时候,上网查资料,有好多人老是把这两个给弄混了,我也纠结了一会,特此说明一下,以备记忆。
//获取appstore最新的版本号
NSString *newVersion = [rightDic objectForKey:@"version"];
//获取应用程序的地址
NSString *newURL = [rightDic objectForKey:@"trackViewUrl"];
//取得本地程序的版本号
NSDictionary *localDic =[[NSBundle mainBundle] infoDictionary];
NSString *localVersion =[localDic objectForKey:@"CFBundleShortVersionString"];
CCLog(@"appStore 版本号为:%@ 本地版本号为:%@",newVersion,localVersion);
然后便是比较,这两个版本号是否一致来决定是否更新。如果我们需要实现版本的 app 自动更新,那么我们需要获取当前运行程序的版本信息和 appstore 里发布的最新版本信息。
当前运行程序的版本信息,可以在 mainBundle 里面获取:
NSDictionary *infoDict = [[NSBundle mainBundle] infoDictionary];
NSString *currentVersion = [infoDict objectForKey:@"CFBundleVersion"];
而 appstore 里发布的最新版本信息获取稍微复杂一些,有两种方案,思路都是一样的:
其一:在某个服务器上存储最新发布的版本信息,需要的时候向该服务器查询;
其二:在需要的时候向 appstore 查询;
在这里介绍第二种方法:向 appstore 查询应用程序信息,包括作者,版本,app 介绍页面地址等信息。
英文好的同学可以参考 apple 的文档:www.apple.com/itunes/affiliates/resources/documentation/itunes-store-web-service-search-api.html
具体步骤如下:
1,用 POST 方式发送请求:
http://itunes.apple.com/search?term=你的应用程序名称&entity=software
更加精准的做法是根据 app 的 id 来查找:
http://itunes.apple.com/lookup?id=你的应用程序的ID
如果是中国地区的程序,用这个:http://itunes.apple.com/cn/lookup?id=
2,从获得的 response 数据中解析需要的数据。因为从 appstore 查询得到的信息是 JSON 格式的,所以需要经过解析。解析之后得到的原始数据就是如下这个样子的:
{
resultCount = 1;
results = (
{
artistId = 301724683;
artistName = Citibank;
artistViewUrl = "http://itunes.apple.com/us/artist/citibank/id301724683?uo=4";
artworkUrl100 = "http://a5.mzstatic.com/us/r1000/117/Purple/a1/85/a9/mzl.hvwnfdkw.png";
artworkUrl512 = "http://a5.mzstatic.com/us/r1000/117/Purple/a1/85/a9/mzl.hvwnfdkw.png";
artworkUrl60 = "http://a2.mzstatic.com/us/r1000/099/Purple/67/86/7e/mzi.utfdvrgy.png";
averageUserRating = "3.5";
averageUserRatingForCurrentVersion = 5;
contentAdvisoryRating = "4+";
currency = USD;
description = "Description of you app.";
features = (
iosUniversal
);
fileSizeBytes = 4141195;
genreIds = (
6015
);
genres = (
Finance
);
ipadScreenshotUrls = (
"http://a1.mzstatic.com/us/r1000/095/Purple/e0/a6/17/mzl.pbbxcjzt.1024x1024-65.jpg",
"http://a3.mzstatic.com/us/r1000/036/Purple/cc/14/98/mzl.dyairego.1024x1024-65.jpg"
);
isGameCenterEnabled = 0;
kind = software;
languageCodesISO2A = (
EN
);
price = 0;
primaryGenreId = 6015;
primaryGenreName = Finance;
releaseDate = "2011-01-24T06:14:35Z";
releaseNotes = "* View Real-time streaming prices for U.S. Treasuries \n\n* Open and Save your Citi Research in your favorite PDF Reader and Library such as iBooks\n\n* Search for your favorite videos";
screenshotUrls = (
"http://a3.mzstatic.com/us/r1000/066/Purple/17/51/fb/mzl.zywiavgn.png",
"http://a5.mzstatic.com/us/r1000/026/Purple/73/85/97/mzl.csmdtndk.png"
);
sellerName = "Citibank, N.A.";
sellerUrl = "http://";
supportedDevices = (
all
);
trackCensoredName = "Citi Velocity";
trackContentRating = "4+";
trackId = 414697122;
trackName = "Citi Velocity";
trackViewUrl = "http://itunes.apple.com/us/app/citi-velocity/id414697122?mt=8&uo=4";
userRatingCount = 5;
userRatingCountForCurrentVersion = 1;
version = "1.4";
wrapperType = software;
}
);
}
然后从中取得 results 数组即可,具体代码如下所示:
NSDictionary *jsonData = [dataPayload JSONValue];
NSArray *infoArray = [jsonData objectForKey:@"results"];
NSDictionary *releaseInfo = [infoArray objectAtIndex:0];
NSString *latestVersion = [releaseInfo objectForKey:@"version"];
NSString *trackViewUrl = [releaseInfo objectForKey:@"trackViewUrl"];
如果你拷贝 trackViewUrl 的实际地址,然后在浏览器中打开,就会打开你的应用程序在 appstore 中的介绍页面。当然我们也可以在代码中调用 safari 来打开它。
UIApplication *application = [UIApplication sharedApplication];
[application openURL:[NSURL URLWithString:trackViewUrl]];
这是评论的地址:
在iPhone应用里直接打开app store 评论页面的方法:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=abc"]];
复制代码
更换下id号就可以。
如果想要打开下载页面,把url改为
itms-apps://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=40461254
更换下id号就可以。
-
安卓平台:休眠过后不会自动启动;1加回车不能打开控制台
2020-12-29 17:45:08- [√ ] 我代码上次更新时间距今没有超过 2 个月以上 - [√ ] 我仔细阅读了 conf 里面的 sample 文件(包括user.sample.toml和ctrl.sample.toml),并发现如果发生了改动,及时更新了我的 ... -
AppCMS安卓CMS网站系统1.3.610
2013-09-18 15:37:45建立一个类似木蚂蚁、豌豆荚、应用汇一样的APP下载站,横亘在站长面前的3大问题:数据更新(每天成千上万的应用版本更新)、数据空间(超过2T的存储空间)、带宽流量(每个应用的图片和APK资源占用大量下载带宽)。... -
一加7pro电脑模式_一加7/7 Pro推送氢OS公测第六版(安卓10)更新:新增充电优化,全新彩色阅读模式...
2021-01-05 09:15:35更新内容:系统• 新增充电优化,根据您的使用习惯调整充电速率,在电量达到80%时暂缓充电,以延长电池寿命(设置 - 电池 - 充电优化)• 改善后台应用意外关闭的问题• 修复自动录音通知无法关闭的问题• 修复状态栏...一加7 Pro手机近期开始推送氢OS公测第六版系统更新,本次带来了充电优化、全新的彩色阅读模式等功能。
更新内容:
系统
• 新增充电优化,根据您的使用习惯调整充电速率,在电量达到80%时暂缓充电,以延长电池寿命(设置 - 电池 - 充电优化)
• 改善后台应用意外关闭的问题
• 修复自动录音通知无法关闭的问题
• 修复状态栏时间显示错误的问题
• 提升系统稳定性并修复已知问题
阅读模式
• 全新彩色阅读模式,智能调节色域及色彩饱和度,给您更沉浸、舒适的阅读体验(设置 - 显示 - 阅读模式 - 立即开启阅读模式 - 彩色效果)
-------------------------
大家都在看
-------------------------
1、诺基亚150功能机上架:31天续航;Steam冬季大促明日开启,是时候选购自己心仪的游戏了;红米Redmi9明年第一季度上市
2、安卓版微信首发黑暗模式,这次ios落后了;三星Galaxy Note 10 Lite官方渲染图曝光
3、基亚2720个性翻盖手机即将发布:内外双屏,支持4G;模拟过新年——《跨年模拟器2020》上架Steam
-
ApkIDE——安卓反编译
2014-10-19 10:52:47小米人APK改之理是一款可视化的用于修改安卓Apk程序文件的工具,集成了ApkTool、Dex2jar、JD-GUI等Apk修改工具,集Apk反编译、Apk打包、Apk签名,支持语法高亮的代码编辑器,基于文件内容的关键字(支持单行代码或... -
AppCMS 专业APP内容管理系统
2013-08-04 09:09:48无人值守自动更新应用数据,解放站长双手,让站长有更多的时间在优化关键词内容和推广网站 系统安全可靠 模板代码安全检测,输入数据严格验证,杜绝SQL注入XSS跨站攻击,后台安全多重验证 自由定制模板 和世界上最受... -
iOS ---------- 提示用户版本更新
2017-02-06 10:58:17由于改版之后应用中不能含有自动更新提示的样式,只能提示用户进行更新 App检测更新可以使用两种方法。第一种是和安卓等系统一样,获取自己服务器的App版本号与已安装的App版本号比较;第二种是根据已发布到App ...由于改版之后应用中不能含有自动更新提示的样式,只能提示用户进行更新
App检测更新可以使用两种方法。第一种是和安卓等系统一样,获取自己服务器的App版本号与已安装的App版本号比较;第二种是根据已发布到App Store上的应用版本号与已安装的App版本号比较更新。第一种检测更新方法的优点是:检测更新速度快、检测稳定;缺点是:和App Store上的应用版本号不同步(App上架需要审核时间,不确定什么时候成功更新到App Store上)。第二种方法检测更新方法的优点是:检测版本号是实时同步的;缺点是:苹果网络不稳定,检测更新有点延时,部分App获取不到任何参数。
方法一:获取自己服务器版本号检查
1、通过网络请求获取服务器上的版本号;
2、调用上面的比较方法,比较前应用版本号和服务器上的版本号;
3、如果有版本更新则跳转到App Store上下载。方法二:获取App Store上架版本号检查
1、通过网络同步请求获取App Store上对应APP ID的应用信息;
2、提取信息上的最新版本号等信息;
3、提取最新版本号;
4、调用上面的比较方法,比较前应用版本号和最新版本号;
5、如果有版本更新则跳转到App Store上下载。/**获取程序的版本号*/ NSString *version = [[[NSBundle mainBundle]infoDictionary] objectForKey:@"CFBundleVersion"]; AFHTTPSessionManager *mgr = [AFHTTPSessionManager manager]; [mgr.responseSerializer setAcceptableContentTypes: [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/html", nil]]; NSMutableDictionary *dict = [NSMutableDictionary dictionary]; // dict[@"id"] = @"1073033949";// 上架的ID dict[@"id"] = App_ID;// 你程序的apple ID号 [mgr POST:App_URL parameters:dict success:^(NSURLSessionDataTask * _Nonnull task, id _Nonnull responseObject) {// App_URL http://itunes.apple.com/lookup NSArray *array = responseObject[@"results"]; if (array.count != 0) {// 先判断返回的数据是否为空 没上架的时候是空的 NSDictionary *dict = array[0]; self.dictM = dict; [array writeToFile:App_URLPath atomically:YES];// 这是我保存到本来了 后面的功能要使用 if ([dict[@"version"] floatValue] > [version floatValue]) {//判断版本大小了 UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"更新" message:@"有新的版本更新,是否前往更新?" delegate:self cancelButtonTitle:@"关闭" otherButtonTitles:@"更新", nil] ; alert.delegate = self; [alert show]; } } } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) { }];
-
微信发布7.0.15更新!五大新功能,个个实用,每个都很赞!
2020-05-22 13:51:39520,大家过的怎么样呢?!520当天,微信团队除了像往年一样支持最大520红包外,也发布了...我们一起来康康~我们先看看官方的更新日志,“可以设置深色模式不跟随系统”、“阅读网页文章时回复消息会自动打开浮窗”... -
二开品优自动采集电影源码
2018-10-28 11:11:377、电脑手机自适应,可生成APP,附赠APP一键生成软件安卓版 8、内置多条播放接口 9、友情链接链接系统 10、热门视频排行榜 11、支持页面缓存 12、SEO系统,后台轻松设置SEO 13、对接微信公众号,实现微信直接看电影 ... -
41邦订餐管理系统
2018-11-16 15:47:496.商家订单实时提醒(商户后台20秒自动更新订单记录,新订单商户及时声音提示) 7.订单监控系统8.配送员调度系统 9.商家APP端 10.配送员APP端+抢单 11.红包+满减活动 12.演示网站可联系客服索要。 pc端演示网址:app... -
02408仿天涯论坛模板的免费论坛系统(php在线问答系统源码)v2.0.zip
2019-07-07 22:35:20这个仿天涯论坛模板的免费论坛系统在用户体验方面也是下了很大功夫,可以安装到任意网站二级目录,后台有很多友好提示,可以一键清除全部缓存,邮件实时通知,安装程序自动识别和设置伪静态,表单内容可以自动补全,... -
【智影CMS】网站视频系统分享,创新功能秒杀市面上的视频系统源码
2018-04-28 10:58:23封装安卓APP应用以及苹果APP应用,封装手机端数据同步自动更新 会员在线上传 用户可通过电脑、手机端在线上传视频以及发布图片小说等,实时分享到网站 上传视频奖励 用户上传视频一经站长后台审核通过,该... -
深蓝音乐铃声播放系统 v8.0.rar
2019-07-08 19:54:25深蓝音乐铃声系统是目前铃声软件中唯一支持手机远程控制的铃声系统,可以支持PPC手机,谷歌的安卓(Android)手机,以及普通JAVA手机。使用非常小的网络流量,就可以完美的使用手机来遥控铃声系统。 深蓝音乐铃声... -
电脑只能上微信不能打开网页_?...微信又更新!暗黑模式可独立设置,新增群接龙固定入口...
2020-12-02 04:31:13前段时间微信支持设置暗黑模式引起了大众的关注,但有小伙伴表示:为啥微信不能单独设置,要随系统变化?这下好了,微信安卓版发布7.0.15内测版本,私信「安卓内测版」即可获取。可以看到,本次内测更新了几大亮点... -
简单又好用的学校数字化报修系统软件
2017-02-06 09:49:12更新时间:2017/1/7 在线下载:t(点)25175(点)com:8003/8003(点)rar 系统管理员登录:管理员账号admin 密码a25175 特色重点说明: a.WEB兼容.(ie8+,google,firefox…) b.手机兼容(苹果,安卓) c.app兼容 ... -
[精仿]QQ2013局域网通讯(10.30更新版-带最新版界面库)
2013-11-02 16:18:45特权:购买商业版的用户,有权利享有最快的更新服务,第一时间将最新版本的dll源码送到你手上。 使本项目源码或本项目生成的DLL前请仔细阅读以下协议内容,如果你同意以下协议才能使用本项目所有的功能,否则如果你... -
优考试局域网考试系统 v4.2.2 标准版.zip
2019-07-12 22:11:22优考试局域网考试系统标准版 v4.2.2 更新: 1.优化电脑端、手机端考试界面。当前界面更美观, 操作更方便。为移动端专门优化了考试界面,更清爽 2.优化首页,在首页上增加管理员登录,考生登录。把考生登录与... -
小米有侧边栏功能吗_你的小米手机这3个功能关了吗?教你一键关闭,从此告别手机卡顿...
2020-12-16 15:37:481. 关闭系统自动更新很多朋友应该都遇到,手机更新系统之后就开始变的很卡,为什么会这样呢?其实原因很简单,无非就是我们手机的配置,带不动更新后的系统,并且系统更新之后也会占手机内存。所以才会导致手机卡顿... -
网软志成人才招聘系统全新支持个人客户端和企业客户端、全新手机触屏版功能多,界面好、微信招聘、互动问答...
2016-06-28 11:15:1837、支持在线支付,支付成功后系统自动升级会员帐号。 38、支持英文简历,会员可以创建多份简历。 39、求职简历可直接发送到企业的邮箱。 40、分站功能独立,支持二级域名访问分站。 41、数据采集 电子地图 企业多... -
完美一键装机 v2.2.5.zip
2019-07-14 20:19:45完美一键装机支持对开不了机的电脑还能够再次重装系统,这个功能相当于安卓手机的recovery。当然前提是得先安装完美一键装机的超级模块功能。相当于手机刷入recovery模式。 完美一键装机 v2.2.5正式版更新功能点 1... -
iphone闹钟自定义歌曲_iOS自定义闹钟 —— 中国法定节假日(升级版)
2020-10-23 10:34:51以及多项更新 Jubal:iOS自定义闹钟V1.2.1zhuanlan.zhihu.com⚠️有部分小伙伴反馈自动化运行报错,是由于部分系统版本的快捷指令有BUG,请大家升级到最新的系统再使用前言19年9月的时候我发布过《不用羡慕安卓!... -
判断是否节假日 接口_iOS自定义闹钟 —— 中国法定节假日(升级版)
2021-01-15 11:52:12以及多项更新 Jubal:iOS自定义闹钟V1.2.1zhuanlan.zhihu.com⚠️有部分小伙伴反馈自动化运行报错,是由于部分系统版本的快捷指令有BUG,请大家升级到最新的系统再使用前言19年9月的时候我发布过《不用羡慕安卓!... -
Python3+Appium学习笔记01-环境配置(上)
2019-05-09 17:12:05这次可以在工作时间中学习。emmm。希望自己能坚持把这个系列更新完吧。 首先肯定是使用appium去做app自动化。appium支持多种编程语言。支持多桌面系统。支持安卓和ios。 appium扩展了很多selenium的协议。和... -
立一个大大的flag
2018-06-28 17:14:00跌跌撞撞也做了android接近三年的时间了,一直没有系统的去写过博客,一方面是没时间,一方面可能自己的技术达不到,写不出来什么非常有用的东西,看着大神们的博客,自动化,热更新,rn,flutter,我一个小安卓只能... -
惠惠动态IP软件 电脑版V13.0
2019-05-03 13:39:4524.各城市线路每2至3天或一周左右自动更新动态ip库。 25.配备软件使用操作视频教程。 26.配备停留实时提示说明功能。 使用详细: 一、使用环境: 1.软件配备强大的功能,全面支持winXP、Win7、Win8、Wista、Win10、... -
微信找不到nfc功能_苹果ios 14一周深度体验,这3个功能尤其好用,你还没发现吗?...
2020-12-16 14:20:56在ios 14中引入了全新的app Library页面的,默认在主屏页的最后一个,文件夹的形式存在,对手机里的app做一次整理和收纳,不过和安卓不一样的是,ios 系统会自动帮你分门别类,组成分类文件夹,找不到app的时候,...