苹果5s系统升级ios8.0新系统ios8中国移动看不见

苹果iOS 8反追踪系统遭吐槽:几乎没有用
[摘要]WiFi软件与分析公司AirTight Networks的首席系统工程师胡平德米斯拉(Bhupinder Misra)称,iOS 8中的反追踪系统几乎没什么用。
BI中文站 10月1日报道的最新版移动操作系统iOS 8中增加了不少的新功能,其中有一项功能似乎对保护用户隐私很有帮助,据说它可以在用户手机寻找WiFi服务时将手机的地址随机化,从而把用户的手机隐藏起来。但是据WiFi软件与分析公司AirTight Networks的首席系统工程师胡平德米斯拉(Bhupinder Misra)称,问题是这个反追踪系统几乎没什么用。这项新的隐私保护功能的目的是将用户的手机屏蔽起来,让手机在探测能够上网或使用连网应用的WiFi信号时不被察觉。苹果的想法是将用户手机的MAC地址随机化,这样当用户手机在寻找优质信号时就不会被WiFi供应商识别到了。MAC地址是一个字符串,它是所有手机的唯一身份识别码。这听起来似乎不错,但只是纸上谈兵。都知道,黑客可以利用WiFi信号监控你的上网活动。广告商们也很想知道消费者都是哪些人,是否是回头客,以便向你发送有针对性的广告。苹果在媒体上一直鼓吹它已经提高了用户的隐私保护。问题是,要想让苹果的这项反追踪功能发挥作用,你的iPhone就必须满足3个条件。首先,WiFi功能必须打开,但是又不能挂在任何WiFi服务上。其次,手机必须处于休眠模式下。最后,必须在隐私设置中将位置服务的开关关掉。不用说,几乎没有人会让自己的手机处于这种状态下。如果将地理位置服务关闭,大多数热门应用就无法正常工作了。另外,如果说你的手机一旦被唤醒,保护功能就失效的话,那也是非常荒唐的事情。AirTight的发言人称,或许99%的用户都无法受到iOS 8中的MAC随机化功能的保护。综上所述,只有当你想偷偷使用其他人的WiFi而不想被追踪到的时候,iOS 8中的MAC地址随机化功能才有点用,但是即便如此,你也要非常小心地修改系统设置才行。(林靖东)【美国Business Insider作品(简称“作品”)的中文翻译权及中文版版权均归腾讯公司独家所有。未经腾讯公司授权许可,任何组织、机构或个人不得对作品进行中文翻译或对作品中文版本实施转载、摘编或其他任何形式的使用行为,违者腾讯公司将追究其法律责任。】
[责任编辑:haroldli]
您认为这篇文章与"新一网(08008.HK)"相关度高吗?
Copyright & 1998 - 2017 Tencent. All Rights Reserved
还能输入140字ios8修改中国移动文字教程 ios8怎么修改运营商名字?
ios8怎么修改运营商名字?在ios8系统中,默认的运营商名字一般就是sim卡名字,或中国移动及中国联通电信等等~这样手机看起来实在是太......
ios8怎么修改运营商名字?在ios8系统中,默认的运营商名字一般就是sim卡名字,或中国移动及中国联通电信等等~这样手机看起来实在是太没有个性了,那么该怎么修改默认运营商的名字呢?下面小编给大家来分享一下修改教程吧。
1.依次点开管理-软件源-编辑-添加:
2.进入刚添加的源Alex Zielenski,安装Zeppelin
3.进入设置,点Zeppelin。如想设置图标点击Theme
4.文字请点击右上角:Carrier Text输入你喜欢的文字
以上就是小编给大家分享的ios8修改运营商名字方法,大家可以去试试哦,换成你喜欢的名字,看起来非常好看的哦。
更多关于的相关阅读:软件与服务//
苹果新系统iOS8太占内存遭吐槽
  昨天凌晨,苹果正式发布了iOS8操作系统并向用户开放下载,iOS8中最重要的功能升级当属语音短信和对第三方输入法的支持。不过,由于升级iOS8需要足够大的存储空间,这也让很多用户苦恼不已。  新功能 iOS8可发语音短信  苹果今年6月发布了iOS8,也相继推出了一些面向开发者的测试版,此次上线的是面向公众用户的正式版。从整体风格来看,iOS8与iOS7相同,但是在功能上,还是有不少的更新升级。  iOS8最主要的功能升级,体现在新的短信功能。在新版本中,用户可以使用短信直接发语音短信,还能发送视频,利用发起群聊等。这一功能与微信等即时通讯软件十分类似。另外,在iOS8中,苹果终于开放了对第三方输入法的支持,这也终于让很多不喜欢苹果自带输入法的用户有了选择自己最习惯的输入方式的权利。  此外,iOS8增加的功能还包括顶部通知栏增强互动性、照片应用加入搜索、照片编辑功能增加、多任务界面加入最近联系人等。  不过,原定和iOS8一起发布的移动健康平台HealthKit,由于存在漏洞被暂停开放。据了解,该应用可以存储用户的健康数据。  更新用户隐私协议  随着iOS8的发布,苹果也更新了用户隐私协议。苹果表示:“在运行iOS8系统的设备中,你的个人数据,比如照片、信息(包括附件)、电子邮件、联系人、通话历史、内容、便签以及提醒设置,都将在你的口令的保护之下。”苹果表示,和竞争对手不同,苹果不会绕过用户口令,也不会获得用户隐私信息。“未来从技术上,我们已经不可能再满足政府部门有关从用户的iOS设备中,提取个人信息的要求。”而就在不久前,苹果CEO库克还公开指责对用户信息的收集过多。  吐槽点 升级需超大存储空间  昨天尝鲜升级至iOS8的苹果用户发现,升级iOS8至少需要5.7GB的存储空间。这让很多人在升级之前,先要忙着删除手机里的文件、照片、视频、APP。  “8G的5C就不要想了,16G的5S升级完也不剩什么了。”“这分明是逼着让买128GiPhone6的节奏啊。”不少网友纷纷抱怨。不过当用户完成升级后发现,实际上系统并没有占用那么多的空间。  据熟悉iOS系统的人士介绍,直接手机升级需要再临时占用一倍以上的空间,所以对可用空间的要求比较高。如果用户手机的容量不足,最好还是通过电脑用iTunes来进行升级。  小贴士  哪些设备可以升级?  可以升级至iOS8的苹果设备包括iPhone4S以及之后的iPhone、iPad2之后的iPad和iPodtouch第5代。不过,由于硬件上的差异,不是所有设备升级后功能支持和使用体验都一样,一些旧设备会出现运行不够或某些功能无法使用的问题。因此硬件配置稍低的设备建议谨慎升级。  如何完成设备升级?  简单的办法是在设备上直接无线升级,在苹果设备上打开“设置”-“通用”-“软件升级”即可,但要留出一定空间,更新需要的可用空间大约为6GB。
  此外,也可以连接电脑升级,打开iTunes升级,连接后会弹出有新版本,更新即可。至于已经越狱的用户,需要备份所有资料后连接iTunes进行DFU升级。需要提醒的是iOS8还不能越狱。  支持哪些输入法?  对中国用户而言,iOS8系统最重大的改动,是可安装第三方中文输入法。  讯飞、百度、搜狗输入法已经可以在苹果商店中找到。讯飞输入法将语音、手写的优势延续到iOS8系统中;百度输入法基于大数据的支持,语音识别率高达90%,另外可第一时间加入网络热词。搜狗输入法iPhone版具有滑行输入、手势输入等功能。
关键词:iOS8,占内存,遭吐槽
责任编辑:邓志刚
All Rights Reserved, Copyright , .cn渝ICP证B2-号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i
京公网安备84号下次自动登录
关注移动互联网和移动APP开发工具、开发框架、测试工具、微信开发、Android源码、Android开源类库以及各种开源组件的IT科技网站
现在的位置:
整理iOS9适配中出现的坑(图文)
一、NSAppTransportSecurity
iOS9让所有的HTTP默认使用了HTTPS,原来的HTTP协议传输都改成TLS1.2协议进行传输。直接造成的情况就是App发请求的时候弹出网络无法连接。解决办法就是在项目的info.plist 文件里加上如下节点:
NSAppTransportSecurity - NSAllowsArbitraryLoads
这个子节点的意思是:是否允许任性的加载?! 设为YES的话就将禁用了AppTransportSecurity转而使用用户自定义的设置,这个问题就解决了。
如果你不是在董铂然博客园看到本文,请。
上面说是苹果限制了HTTP协议,但是也并不是说所有的HTTPS都能完美适配iOS9了。
举个栗子,从app内起webView加载https的网页。新建个项目写几行起网页的代码
- (void)loadView{
UIWebView *web = [[UIWebView alloc]initWithFrame:[UIScreen mainScreen].bounds];
self.view =
- (void)viewDidLoad {
[super viewDidLoad];
UIWebView *web = (UIWebView *)self. //董铂然
NSURL *url = [NSURL URLWithString:@"
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[web loadRequest:request];
中间的url就是我们想要加载的https地址,用https:/// 和 https:/// 分别试一下,结果不同
github的网页能打开,百度的网页打不开,下面打印了一行log
NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802)
原因是苹果的说首先必须要基于TLS 1.2版本协议。然后证书的加密的算法还需要达到SHA256或者更高位的RSA密钥或ECC密钥,如果不符合,请求将被中断并返回nil.
在浏览器中是可以直接查看这个网站的加密算法的,先点绿锁再点证书信息。
从右边两张图可以看出,github带RSA加密的SHA-256符合苹果的要求,所以才可以展示。
针对百度的情况可以在info.plist中配置如下,如果网站引用的比较多应该是需要针对每个网站进行配置。
NSAppTransportSecurity,NSExceptionDomains,NSIncludesSubdomains,NSExceptionRequiresForwardSecrecy,NSExceptionAllowInsecureHTTPLoads 写在下面便于复制。
其中的ForwardSecrecy理解为超前的密码保护算法,在里有写,一共是11种。配置完毕百度可以访问。
二、Bitcode
bitcode的理解应该是把程序编译成的一种过渡代码,然后苹果再把这个过渡代码编译成可执行的程序。bitcode也允许苹果在后期重新优化我们程序的二进制文件,有类似于App瘦身的思想。
用了xcode7的编译器编译之前没问题的项目可能会出现下列报错。
XXXX’ does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. for architecture arm64
问题的原因是:某些第三方库还不支持bitcode。要不然是等待库的开发者升级了此项功能我们更新库,要不就是把这个bitcode禁用。
禁用的方法就是找到如下配置,选为NO.(iOS中bitcode是默认YES,watchOS中bitcodes是不让改的必须YES。)
三、设置信任
这一条只和企业级应用或inhose 有关,和AppStore渠道的应用无关。
在iOS8只是弹出一个窗问你是否需要让手机信任这个应用,但是在iOS9却直接禁止,如果真的想信任需要自己去手动开启。类似于Mac系统从未知开发者处下载的dmg直接打不开,然后要到系统偏好设置的安全性与隐私手动打开。 下图展示左边iOS8,右边iOS9
用户需要去 设置---》通用---》描述文件 里面自行添加信任。
这种问题的处理方法也就两种:1.提前周知暂时不要升级iOS9
2.大多是公司员工使用的企业级应用,群发一个指导邮件。
iOS8中,字体是Helvetica,中文的字体有点类似于“华文细黑”。只是苹果手机自带渲染,所以看上去可能比普通的华文细黑要美观。iOS9中,中文系统字体变为了专为中国设计的“苹方” 有点类似于一种word字体“幼圆”。字体有轻微的加粗效果,并且最关键的是字体间隙变大了!
所以很多原本写死了width的label可能会出现“...”的情况。
上面这两张图也可以直观的看出同一个界面,同一个label的变化。
所以为了在界面显示上不出错,就算是固定长度的文字也还是建议使用sizetofit 或者ios向上取整 ceilf() 或者提前计算
CGSize size = [title sizeWithAttributes:@{NSFontAttributeName: [UIFont systemFontOfSize:14.0f]}];
CGSize adjustedSize = CGSizeMake(ceilf(size.width), ceilf(size.height));
五、URL scheme
URL scheme一般使用的场景是应用程序有分享或跳其他平台授权的功能,分享或授权后再跳回来。
在iOS8并没有做过多限制,但是iOS9需要将你要在外部调用的URL scheme列为白名单,才可以完成跳转
如果iOS9没做适配 会报如下错误
canOpenURL: failed for URL : "
" - error: "This app is not allowed to query for scheme mqzone"
具体的解决方案也是要在info.plist中设置 LSApplicationQueriesSchemes 类型为数组,下面添加所有你用到的scheme
六、statusbar
这个还好只是报一个警告,如果就是不管他,也不会出现问题。
&Error&: CGContextSaveGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.
以前我们为了能够实时的控制顶部statusbar的样式,可能会在喜欢使用
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent]
[[UIApplication sharedApplication]setStatusBarHidden:YES];
但是这么做之前需要将 info.plist 里面加上View controller-based status bar appearance
BOOL值设为NO,就是把控制器控制状态栏的权限给禁了,用UIApplication来控制。但是这种做法在iOS9不建议使用了,建议我们使用吧那个BOOL值设为YES,然后用控制器的方法来管理状态栏比如。
- (UIStatusBarStyle)preferredStatusBarStyle
return UIStatusBarStyleLightC
点进头文件可以验证刚才说法:
@property(readwrite, nonatomic,getter=isStatusBarHidden) BOOL statusBarHidden NS_DEPRECATED_IOS(2_0, 9_0, "Use -[UIViewController prefersStatusBarHidden]");
七、didFinishLaunchingWithOptions
如果运行的时候报下列错误,那就是你的didFinishLaunchingWithOptions写的不对了
***** Assertion failure in -[UIApplication _runWithMainScene:transitionContext:completion:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit_Sim/UIKit-3505.16/UIApplication.m:3294**
iOS9不允许在didFinishLaunchingWithOptions结束了之后还没有设置window的rootViewController。 也许是xcode7的编译器本身就不支持。
解决的方法当然就是先初始化个值,之后再赋值替换掉
UIWindow *window = [[UIWindowalloc] initWithFrame:[UIScreenmainScreen].bounds];
window.rootViewController = [[UIViewController alloc]init];
八、tableView
虽然现在的iOS9已经推送正式版了,但是iOS9使用时还是会感觉到App比以前更加卡顿了,tableView拖动时卡顿显示的最为明显。 并且之前遇到一个bug,原本好的项目用xcode7一编译,tableView刷新出了问题 ,[tableView reloadData]无效 有一行cell明明改变了但是刷新不出来。 感觉可能是这个方法和某种新加的特性冲突了,猜测可能是reloadData的操作被推迟到下一个RunLoop执行最终失效。
解决的方法是,注释[tableView reloadData],改用局部刷新,问题居然就解决了。
[self.tableView reloadSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:UITableViewRowAnimationNone];
九、NSLocalizableString(XCode7问题)
如果你程序启动后出现主页面一片空白,或是报了以下的栈调用错误。那就是NSLocalizableString的死循环导致堆栈溢出了。
0x in -[NSLocalizableString length] ()
0x003052cc in -[NSLocalizableString length] ()
0x003052cc in -[NSLocalizableString length] ()
0x003052cc in -[NSLocalizableString length] ()
0x003052cc in -[NSLocalizableString length] ()
0x003052cc in -[NSLocalizableString length] ()
0x003052cc in -[NSLocalizableString length] ()
0x003052cc in -[NSLocalizableString length] ()
0x003052cc in -[NSLocalizableString length] ()
0x003052cc in -[NSLocalizableString length] ()
#10 0x003052cc in -[NSLocalizableString length] ()
#11 0x003052cc in -[NSLocalizableString length] ()
#12 0x003052cc in -[NSLocalizableString length] ()
#13 0x003052cc in -[NSLocalizableString length] ()
#14 0x003052cc in -[NSLocalizableString length] ()
#15 0x003052cc in -[NSLocalizableString length] ()
#16 0x003052cc in -[NSLocalizableString length] ()
这个的解决方法就是找到特定的页面,然后将English 前面的勾勾上。
十、bundle identifier(Xcode7问题)
如果你遇到了在本地编译通过,但是在CI上打包失败。并且报的错误是和bundle identifier相关,那很有可能是你plist文件中写的bundle identifier没有起作用。
因为xcode7新增了此功能,在target下面的BuildSetting里面增加了Product Bundle identifier。苹果之后的做法应该是推荐在此处设置bundle identifier,此处的设置会比info.plist里面优先读取。
如果你的Bundle identifier一直没变,可能不会发现此问题。如果改变了,你在plist中修改是无效的。
另一个做法就是在ci打包的配置Execute shell上增加以下代码
"Set :CFBundleIdentifier com.XXX.XXX" "XXX/Supporting Files/XXX-Info.plist"
十一、 ActionSheet
Actionsheet 在iOS8的时候改了一次版,当时是和AlertView二合一,并且以AlertViewController作为载体,之后再present出来,这在当时,苹果应该是想统一各个控件的展示方式,但是很多人可能并没有在意因为直接show那个方法并没有废除,大家都觉得应该是新旧都能用,再加上有的公司可能自己还做了一定扩展,诸多原因导致还是用的旧方法。
在iOS9上使用旧方法直接show,会出现左图的问题。如果用的是AlertViewController的方法则不会出现问题(右图)
我猜测可能是sheet的windowLevel比键盘低导致的。但是将优先级设到10000,然后显示在keyWindow上。
sheet.window.windowLevel = 10000;
[sheet showInView:[UIApplication sharedApplication].keyWindow];
然后没有效果,然后又查了下stackoverflow 有个方法能取出优先级最高的window
UIWindow *topWindow = [[[UIApplication sharedApplication].windows sortedArrayUsingComparator:^NSComparisonResult(UIWindow *win1, UIWindow *win2) {
return win1.windowLevel - win2.windowL
}] lastObject];
试了下还是没有效果。 应该键盘的优先级无论如何都是最高的, 想盖在键盘上面的方法行不通。
当然,如果更换的成本比较大,也并不是没有办法,直接设置弹sheet之前收回键盘就好了。
如果你不是在董铂然博客园看到本文,请。
暂时遇到这些问题,感觉iOS9的出现让所有iOS开发都是菊花一紧,预祝所有的iOS都能及时的做好适配改完bug,下个版本一上线,所有问题都解决。
【上篇】【下篇】

我要回帖

更多关于 苹果ios9系统退回ios8 的文章

 

随机推荐