首页 文章 精选 留言 我的

精选列表

搜索[Java库],共10000篇文章
优秀的个人博客,低调大师

IT小白知识库:云计算、大数据和人工智能

IT圈风云变换,既有底层被称为“IT民工”基层技术人员的心酸故事,也有身价过亿窜上富豪榜的IT大咖,造富能力超强,这里从来不缺少话题,当然,所有话题都围绕着IT技术在展开。如果希望到IT圈来混,那一定注意要懂得一些行业术语,提起什么能侃侃而谈几句,发表自己的看法,以此证明自己在IT圈里混的时间不短,比较资深。本来这世界上任何事物都是相对的,没有绝对的对与错,也许现在说的不对,未来可能是对的,一切都在不断的变化之中。那么我们要掌握些什么?当然是最热门的,最火爆的IT技术,谈起这些容易引起人们的共鸣,这些技术也是最容易产生创新和财富的地方。就让我们来看看当前最热门的IT技术,采用简单易懂的方式让一个小白快速入门。 云计算 不用多说,云计算火了快十年了,无人不知无人不晓。经过这些年的市场培育,云计算已经成为IT行业里的基础技术,几乎一切的IT建设和设计都要围绕云计算展开,哪里有IT,哪里就有云,云计算成为新的IT圈的代表词。云计算给IT圈带来的其实就两点:依仗网络进行分布式计算,还有软件定义,用软件来接管被硬件一统天下的IT系统,这无疑是IT圈在自己革自己的命。云计算同时将IT圈分成了三部分,三个小圈:IaaS、PaaS、SaaS,正是IT圈可以对外提供的三种服务模式。这三个圈就像一栋大楼里的顶楼、中间、低层三大块,基础设施在最下端是IaaS,平台在中间是PaaS,软件在顶端是SaaS。有了IaaS,你可以将硬件外包到别的地方去。IaaS会提供场外服务器、存储和网络硬件,你可以租用,节省了维护成本和办公场地,公司可以在任何时候利用这些硬件来运行其应用。有了PaaS,你所有的开发都可以在这一层进行,节省了时间和资源。在PaaS上可以找到各种开发和分发应用的解决方案,节省了你在硬件上的费用,可实现网页应用管理、应用设计、以及应用开发协作工具等。有了SaaS,你所消费的服务完全是从各种网页进入的,任何一个远程服务器上的应用都可以通过网络来运行。云计算除了IaaS、PaaS、SaaS三大金刚,现在又有了新的成员,这个很多人并不知晓。如:CaaS叫协作即服务,CaaS是将传统电信的消息、语音、视频、会议、通信协同等封装成应用软件编程接口或者软件开发工具包,然后通过互联网对外开放,提供给第三方使用,将电信能力真正作为服务对外提供。MaaS叫物联网即服务,这个概念是伴随着物联网产生的,物联网对数据存储和计算量的需求都上升了一个新台阶,需要虚拟化的云计算、SOA等技术相结合以实现物联网的泛在网络。 大数据 大数据相当于人的大脑从小学到大学记忆和存储的海量知识,这些知识只有通过消化,吸收、再造才能创造出更大的价值。同时这些知识要达到一定的量才有意义,知识面过窄也不容易产生价值。大数据之所以被IT圈在这两年被推崇,主要是数据量增长太快,全球各种视频、图片、语音、文字等各种数据每两年都要增长一倍。如果将这些数据放在存储设备里静静地睡大觉,这是极其浪费的。当数据的量在不断增长,就可以对其中含有意义的数据进行专业化处理,提高对数据的“加工能力”,通过“加工”实现数据的“增值”。这就像垃圾回收一样,当垃圾量不断增大时,通过分类对可回收垃圾进行回炉重新处理,就可以将垃圾变废为宝。对于大数据也一样,首先要有海量的数据,然后通过加工,找出一些特定规律,这些规律就存在巨大的价值,可以指导相应工作更加有效开展,从而提升工作效率或者带来更多利润。要知道在IT的世界里,最不缺少的就是数据,要善于从海量数据中找寻机会,而使用的技术就是大数据,所以大数据不火都不行。 人工智能 人工智能可不是新面孔,至少几十年前就被人提及了,只是最近才真正火热起来。人工智能火起来的推力按照百度李彦宏的说法,来自于大数据。因为大数据火了,所以人工智能也跟着火了,人工智能与大数据关系紧密。越来越多的数据产生,这使得我们可以利用这些数据做一些过去只有人能够做的事情。除了数据丰富度,计算资源也变得丰富,计算能力越来越强大,计算成本越来越低廉,再加上有了大数据,我们可以实现很多比如说像语音识别、自然语言理解、图像的识别,甚至无人驾驶汽车等,这些都是人工智能的范畴。人工智能是设计出以人类智能相似方式做出反应的智能机器,它离不开大数据,更是需要基于云计算平台完成深度学习进化,这也是人工智能为何经过五十年,直到现在才火。没有大数据、没有云计算,以前提出的人工智能只能是空中楼阁,无法在现实中实现。而现在则不同,有了很多技术的铺垫和积累,人工智能开发出来的机器人,其表现得越来越接近人类,甚至智能水平超过人类。在最近的人机大战中,都是以机器人完胜告终,这在十年前也是不可想象的事情。显然,人工智能的水平已经有了突飞猛进的发展。不过,这依然属于人工智能的初级水平,我们还没能创造出可以解决多种多样不同类型问题的人工通用智能,还没有听一两年人类对话录音就能自己说话的机器,阿尔法狗通过分析数千局比赛,然后又进行更多的自我对弈而学会了下围棋,但阿尔法狗却不能用来下国际象棋,真正的人工通用智能离我们还很远,这也预示着未来人工智能前途不可限量。 显然,要进入IT圈,首先得搞清楚云计算、大数据、人工智能这些最流行的东西,这样才有机会从小白变成圈内资深人士,努力吧! 本文转自d1net(原创)

优秀的个人博客,低调大师

分享个自己Python爬虫时的浏览器标识库

本人使用的Python3版本,python2未做测试 如有问题很可能出在 toObj函数上toObj函数具体参考:https://stackoverflow.com/questions/1305532/convert-Python-dict-to-object UserAgent.py class toObj(object): def __init__(self, d): for a, b in d.items(): if isinstance(b, (list, tuple)): setattr(self, a, [toObj(x) if isinstance( x, dict) else x for x in b]) else: setattr(self, a, toObj(b) if isinstance(b, dict) else b) ''' Android 设备 ''' Android = toObj({ "Xiaomi": { "Id": "Xiaomi", "Name": "小米手机", "UserAgent": "Mozilla/5.0 (Linux; U; Android 4.1.1; zh-cn; MI2 Build/JRO03L) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 XiaoMi/MiuiBrowser/1.0" }, "Meizu": { "Id": "Meizu", "Name": "魅族手机", "UserAgent": "JUC (Linux; U; 2.3.5; zh-cn; MEIZU MX; 640*960) UCWEB8.5.1.179/145/33232" }, "Nexus7": { "Id": "Nexus7", "Name": "Nexus 7 (Tablet)", "UserAgent": "Mozilla/5.0 (Linux; Android 4.1.1; Nexus 7 Build/JRO03D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Safari/535.19" }, "AndroidGalaxyS3": { "Id": "AndroidGalaxyS3", "Name": "Samsung Galaxy S3 (Handset)", "UserAgent": "Mozilla/5.0 (Linux; U; Android 4.0.4; en-gb; GT-I9300 Build/IMM76D) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30" }, "AndroidGalaxyTab": { "Id": "AndroidGalaxyTab", "Name": "Samsung Galaxy Tab (Tablet)", "UserAgent": "Mozilla/5.0 (Linux; U; Android 2.2; en-gb; GT-P1000 Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1" } }) ''' 国产浏览器 ''' China = toObj({ "360se": { "Id": "360se", "Name": "360安全浏览器", "UserAgent": "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; 360SE)" }, "360chrome": { "Id": "360chrome", "Name": "360极速浏览器", "UserAgent": "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; 360Chrome)" }, "liebao": { "Id": "liebao", "Name": "猎豹浏览器", "UserAgent": "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.99 Safari/537.36 LBBROWSER" }, "ucpc": { "Id": "ucpc", "Name": "UC浏览器电脑版", "UserAgent": "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 UBrowser/5.1.2238.18 Safari/537.36" }, "uc": { "Id": "uc", "Name": "UC浏览器手机版", "UserAgent": "UCWEB/2.0 (iOS; U; iPh OS 4_3_2; zh-CN; iPh4) U2/1.0.0 UCBrowser/8.6.0.199 U2/1.0.0 Mobile" }, "sougou": { "Id": "sougou", "Name": "搜狗浏览器", "UserAgent": "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36 SE 2.X MetaSr 1.0" }, "baidu": { "Id": "baidu", "Name": "百度浏览器", "UserAgent": "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 BIDUBrowser/7.5 Safari/537.36" }, "maxthon": { "Id": "maxthon", "Name": "遨游浏览器", "UserAgent": "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Maxthon 2.0)" }, "qq": { "Id": "qq", "Name": "QQ浏览器", "UserAgent": "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.124 Safari/537.36 QQBrowser/9.0.2229.400" }, "mqq": { "Id": "mqq", "Name": "QQ浏览器手机版", "UserAgent": "MQQBrowser/3.6/Adr (Linux; U; 4.0.3; zh-cn; HUAWEI U8818 Build/U8818V100R001C17B926;480*800)" }, "wechat": { "Id": "wechat", "Name": "微信内置浏览器", "UserAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 6_1_3 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Mobile/10B329 MicroMessenger/5.0.1" } }) ''' 搜索引擎浏览器 ''' Spider = toObj({ "Baidu": { "Id": "Baidu", "Name": "百度PC", "UserAgent": "Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)" }, "Baidum": { "Id": "Baidum", "Name": "百度移动端", "UserAgent": "Mozilla/5.0 (Linux;u;Android 4.2.2;zh-cn;) AppleWebKit/534.46 (KHTML,like Gecko) Version/5.1 Mobile Safari/10600.6.3 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)" }, "BingBot": { "Id": "BingBot", "Name": "BingBot (Bing's spider)", "UserAgent": "Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)" }, "Googlebot": { "Id": "Googlebot", "Name": "Googlebot (Google's spider)", "UserAgent": "Googlebot/2.1 (+http://www.googlebot.com/bot.html)" }, "Slurp": { "Id": "Slurp", "Name": "Slurp! (Yahoo's spider)", "UserAgent": "Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)" } }) ''' Mac OS ''' Safari = toObj({ "SafariMac": { "Id": "SafariMac", "Name": "Safari on Mac", "UserAgent": "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_6; en-US) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27" }, "SafariWin": { "Id": "SafariWin", "Name": "Safari on Windows", "UserAgent": "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27" }, "SafariiPad": { "Id": "SafariiPad", "Name": "Safari on iPad", "UserAgent": "Mozilla/5.0 (iPad; CPU OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3" }, "SafariiPhone": { "Id": "SafariiPhone", "Name": "Safari on iPhone", "UserAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3" } }) ''' Opera 欧朋 ''' Opera = toObj({ "OperaMac": { "Id": "OperaMac", "Name": "Opera on Mac", "UserAgent": "Opera/9.80 (Macintosh; Intel Mac OS X 10.6.8; U; en) Presto/2.9.168 Version/11.52" }, "OperaWin": { "Id": "OperaWin", "Name": "Opera on Windows", "UserAgent": "Opera/9.80 (Windows NT 6.1; WOW64; U; en) Presto/2.10.229 Version/11.62" } }) ''' Chrome ''' Chrome = toObj({ "ChromeAndroidMobile": { "Id": "ChromeAndroidMobile", "Name": "Chrome on Android Mobile", "UserAgent": "Mozilla/5.0 (Linux; Android 4.0.4; Galaxy Nexus Build/IMM76B) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.133 Mobile Safari/535.19" }, "ChromeAndroidTablet": { "Id": "ChromeAndroidTablet", "Name": "Chrome on Android Tablet", "UserAgent": "Mozilla/5.0 (Linux; Android 4.1.2; Nexus 7 Build/JZ054K) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Safari/535.19" }, "ChromeMac": { "Id": "ChromeMac", "Name": "Chrome on Mac", "UserAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.93 Safari/537.36" }, "ChromeUbuntu": { "Id": "ChromeUbuntu", "Name": "Chrome on Ubuntu", "UserAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.11 (KHTML, like Gecko) Ubuntu/11.10 Chromium/27.0.1453.93 Chrome/27.0.1453.93 Safari/537.36" }, "ChromeWin": { "Id": "ChromeWin", "Name": "Chrome on Windows", "UserAgent": "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.94 Safari/537.36" }, "ChromeiPhone": { "Id": "ChromeiPhone", "Name": "Chrome on iPhone", "UserAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 6_1_4 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) CriOS/27.0.1453.10 Mobile/10B350 Safari/8536.25" } }) ''' IE ''' IE = toObj({ "IE10": { "Id": "IE10", "Name": "Internet Explorer 10", "UserAgent": "Mozilla/5.0 (compatible; WOW64; MSIE 10.0; Windows NT 6.2)" }, "IE6": { "Id": "IE6", "Name": "Internet Explorer 6", "UserAgent": "Mozilla/4.0 (Windows; MSIE 6.0; Windows NT 5.2)" }, "IE7": { "Id": "IE7", "Name": "Internet Explorer 7", "UserAgent": "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)" }, "IE8": { "Id": "IE8", "Name": "Internet Explorer 8", "UserAgent": "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)" }, "IE9": { "Id": "IE9", "Name": "Internet Explorer 9", "UserAgent": "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)" } }) ''' Firefox ''' Firefox = toObj({ "FFAndroidHandset": { "Id": "FFAndroidHandset", "Name": "Firefox on Android Mobile", "UserAgent": "Mozilla/5.0 (Android; Mobile; rv:14.0) Gecko/14.0 Firefox/14.0" }, "FFAndroidTablet": { "Id": "FFAndroidTablet", "Name": "Firefox on Android Tablet", "UserAgent": "Mozilla/5.0 (Android; Tablet; rv:14.0) Gecko/14.0 Firefox/14.0" }, "FFMac": { "Id": "FFMac", "Name": "Firefox on Mac", "UserAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:21.0) Gecko/20100101 Firefox/21.0" }, "FFUbuntu": { "Id": "FFUbuntu", "Name": "Firefox on Ubuntu", "UserAgent": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:21.0) Gecko/20130331 Firefox/21.0" }, "FFWin": { "Id": "FFWin", "Name": "Firefox on Windows", "UserAgent": "Mozilla/5.0 (Windows NT 6.2; WOW64; rv:21.0) Gecko/20100101 Firefox/21.0" } }) ''' Windows Phone ''' WinPhone = toObj({ "Win7Phone": { "Id": "Win7Phone", "Name": "Windows Phone 7", "UserAgent": "Mozilla/4.0 (compatible; MSIE 7.0; Windows Phone OS 7.0; Trident/3.1; IEMobile/7.0; LG; GW910)" }, "Win75Phone": { "Id": "Win75Phone", "Name": "Windows Phone 7.5", "UserAgent": "Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0; SAMSUNG; SGH-i917)" }, "Win8Phone": { "Id": "Win8Phone", "Name": "Windows Phone 8", "UserAgent": "Mozilla/5.0 (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; ARM; Touch; NOKIA; Lumia 920)" } }) ''' iOS ''' iOS = toObj({ "iPad": { "Id": "iPad", "Name": "iPad", "UserAgent": "Mozilla/5.0 (iPad; CPU OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3" }, "iPhone": { "Id": "iPhone", "Name": "iPhone", "UserAgent": "Mozilla/5.0 (iPhone; CPU iPhone OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3" }, "iPod": { "Id": "iPod", "Name": "iPod", "UserAgent": "Mozilla/5.0 (iPod; U; CPU like Mac OS X; en) AppleWebKit/420.1 (KHTML, like Gecko) Version/3.0 Mobile/3A101a Safari/419.3" } }) Other = toObj({ "BlackBerry": { "Id": "BlackBerry", "Name": "BlackBerry - Playbook 2.1", "UserAgent": "Mozilla/5.0 (PlayBook; U; RIM Tablet OS 2.1.0; en-US) AppleWebKit/536.2+ (KHTML, like Gecko) Version/7.2.1.0 Safari/536.2+" }, "MeeGo": { "Id": "MeeGo", "Name": "MeeGo - Nokia N9", "UserAgent": "Mozilla/5.0 (MeeGo; NokiaN9) AppleWebKit/534.13 (KHTML, like Gecko) NokiaBrowser/8.5.0 Mobile Safari/534.13" } }) Default = Chrome.ChromeWin.UserAgent 使用: import UserAgent as ua import requests print("默认标识",ua.Default) print("小米标识",ua.Android.Xiaomi.UserAgent) _headers={ 'Accept-Language': 'zh-CN,zh;q=0.8', 'Content-Type': 'text/html;Charset=utf-8', "User-Agent":ua.Android.Xiaomi.UserAgent } rd = requests.get("http://www.jianshu.com/", params=None, headers=_headers) rd.encoding = 'utf-8' print(rd.text)

优秀的个人博客,低调大师

数据库案例集锦 - 开发者的《如来神掌》

标签 PostgreSQL , PG DBA cookbook , PG Oracle兼容性 , PG 架构师 cookbook , PG 开发者 cookbook , PG 应用案例 背景 「剑魔独孤求败,纵横江湖三十馀载,杀尽仇寇,败尽英雄,天下更无抗手,无可柰何,惟隐居深谷,以雕为友。呜呼,生平求一敌手而不可得,诚寂寥难堪也。」 剑冢中,埋的是剑魔独孤求败毕生几个阶段中用过的几柄剑: 利剑无意;第一柄是青光闪闪的利剑,凌厉刚猛,无坚不摧,弱冠前以之与河朔群雄争锋。 软剑无常;第二柄是紫薇软剑,三十岁前所用,误伤义士不祥,悔恨不已,乃弃之深谷。 重剑无锋;第三柄是玄铁重剑,重剑无锋,大巧不工,四十岁之前恃之横行天下。 木剑无俦;第四柄是已腐朽的木剑。 无剑无招;四十岁后,不滞于物,草木竹石,均可为剑。 十多年对PostgreSQL的把玩自认为对它

优秀的个人博客,低调大师

面向万物互联的时序数据库HiTSDB

现在填写调查问卷,将优先获得公测资格 当前物联网的浪潮席卷全球,甚至于人们还没有真正意识到物联网的存在,但它已经无处不在 。个人智能手环,家庭里使用的智能空调,空气净化器,电饭煲,到社会化共享经济的共享单车,共享汽车,再到汽车制造车间生产线,IT机房的网络设备和服务器,交通监控和信号设备,甚至于全球气候的监测设备等等,这一切都通过物联网进行连接,设备和设备之间,人和设备之间万物互联。 透过现象看本质,物联网的本质是数据的采集和价值利用,而物联网领域最广泛和典型的数据类型就是时间序列数据。时间序列数据是同一指标按时间顺序记录的数据列。在同一数据列中的各个数据必须是同口径的,要求具有可比性。时序数据可以是时期数,也可以时点数。如:股票的交易点数,随着时间的推进,产生一系列的数据点。 据Gatener 2017年的报告数据显示,到2020年将

优秀的个人博客,低调大师

Android 一个对sharedpreferences 数据进行加密的开源库

1、项目地址 https://github.com/iamMehedi/Secured-Preference-Store 2、使用方法 2.1、存数据 //存数据 SecuredPreferenceStore prefStore = SecuredPreferenceStore.getSharedInstance(getApplicationContext()); prefStore.edit().putString( "t1" , "tttttt1111111").apply(); ; 2.2、 取数据 String data1 = prefStore.getString( "t1" , "default") ; 3、xml文件内容 <?xml version='1.0' encoding='utf-8' standalone='yes' ?> <map> <string name="11CD15241CB4D6F953FA27C76F72C10920C5FADF14FF2824104FA5D67D25B43C">ZMnr87IlDKg81hKw2SQ6Lw==]dhP/ymX7CMSaCkP6jQvNig==</string> <string name="C8D076EFD8542A5F02F86B176F667B42BFB9B1472E974E6AF31EB27CEA5689D4">JQ6Y4TQ/Y3iYw7KtatkqAg==]P+gpavV0MXiy1Qg0UHlBMg==</string> <string name="F2AA713F406544A3E9ABA20A32364FA29613F01C867B3D922A85DF4FA54FA13D">jMH1Wjnk0vehHOogT27HRA==]e8UHX1ihYjtP6Cv8dWdHLBptLwowt6IojKYa+1jkeH4=</string> <string name="C06C6027E72B7CE947885F6ADE3A73E338881197DBE02D8B7B7248F629BE26DA">EAGwO8u2ZPdxwdpAwPlu6A==]797VOGtpzDBO1ZU3m+Sb1A==</string> <string name="33188AFFEC74B412765C3C86859DE4620B5427C774D92F9026D95A7A8AAE1F96">s0b5h8XNnerci5AtallCQziSbqpm+ndjIsAQQadSxM+xzw7865sE3P+hbxGmMAQQj0kK35/C//eA MXuQ0N/F+oapBiDIKdRt2GJB3wJ+eshuh6TcEv+J8NQhqn1eO2fdao353XthHpRomIeGEWLvB4Yd 7G5YYIajLWOGWzQVsMTg1eqdcJ7+BAMXdOdWhjTTo91NvhvykgLMC03FsePOZ/X8ej4vByH1i0en hJCiChk90AQ9FhSkaF/Oum9KoWqg7NU0PGurK755VZflXfyn1vZ8hhTulW7BrA2o9HvT9tbju+bk 4yJ5lMxgS6o4b+0tqo+H4TPOUiZPgehTwsrzJg== </string> <string name="9DCB904DFDA83286B41A329A7D8648B0BFF73C63E844C88800B2AA5119204845">XPuUd1t97pnwsOzzHY3OCA==]xqXJrEfcgDhYo2K4TTAvY9IQwP/tGctd4Fa1JT/1sB8=</string> </map> 可以看到xml文件里面的内容都已经变成了混乱的字符,从而实现加密。 4、SecurePreferenceStore源码解析 可以看到SecurePreferenceStore 这个类继承了系统的SharePreferences. 然后重写了 里面的 get方法,在重写的方法中,用EncryptionManager的decrypt()方法去对 value 值解密。 用Editor类继承 SharedPreferences.Editor ,然后重写里面的put 方法,对传进来的value值进行加密。

资源下载

更多资源
优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册