32关键词 ios

2019-06-16 19:54:33 ios8988 阅读数 1262

目录

  • 一、Dark Mode 暗黑模式
  • 二、Status Bar更新
  • 三、UIActivityIndicatorView加载视图
  • 四、总结

一、Dark Mode 暗黑模式

1.1 iOS13推出了Dark Mode

Dark Mode

1.2 UIColor拥有了动态属性

iOS13之前只能表示一种颜色

iOS13以后能够表示两种模式下的不同颜色

1.3 图片也能在两种模式下自由切换

iOS13 两种模式下的图片资源

1.4 Dark Mode 模式适配

因为所涉及的内容较多,请参考以下文章
 
 iOS13 暗黑模式(Dark Mode)适配之OC版


二、Status Bar更新

  • iOS13对Status BarAPI做了修改
  • 之前Status Bar有两种状态
    • UIStatusBarStyleDefault 文字黑色
    • UIStatusBarStyleLightContent 文字白色

iOS13以前Status Bar样式

  • iOS13以后有三种状态

    • UIStatusBarStyleDefault自动选择黑色或白色
    • UIStatusBarStyleDarkContent文字黑色
    • UIStatusBarStyleLightContent文字白色

    iOS13以后Status Bar有三种状态


三、UIActivityIndicatorView加载视图

  • iOS13对UIActivityIndicatorView的样式也做了修改
  • 之前有三种样式:
    • UIActivityIndicatorViewStyleGray 灰色
    • UIActivityIndicatorViewStyleWhite 白色
    • UIActivityIndicatorViewStyleWhiteLarge 白色(大型)
  • iOS13废弃了以上三种样式,而用以下两种样式代替:
    • UIActivityIndicatorViewStyleLarge (大型)
    • UIActivityIndicatorViewStyleMedium (中型)
  • iOS13通过color属性设置其颜色

3.1 示例 招ios app马甲包套壳上架技术(个人、团队)H5接口、极光推送、关键词、介绍图、标题。能做的私聊Q;51286559    iOS马甲包开发审核交流Q群:370868450

- (UIActivityIndicatorView *)loadingView {
    if (_loadingView == nil) {
        _loadingView = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleLarge];
        [_loadingView setColor:[UIColor systemBackgroundColor]];
        [_loadingView setFrame:CGRectMake(0, 0, 200, 200)];
        [_loadingView setCenter:self.view.center];
    }
    return _loadingView;
}

3.2 效果

iOS13之前的三种样式

iOS13以后的两种样式

四、总结

iOS13最主要的是推出了暗黑模式Dark Mode,目前App Store榜单上的App已经开始积极适配了
9月份会发布iOS13正式版本,2020年苹果可能要求开发者必须适配Dark Mode,否则不予上架
Status Bar 样式被修改
UIActivityIndicatorView 原有的三种样式全部被废弃,推出两种新的样式



作者:hostname
 作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要这是一个我的iOS交流群:869685378,不管你是小白还是大牛欢迎入驻 ,分享BAT,阿里面试题、面试经验,讨论技术, 大家一起交流学习成长!

2015-05-14 16:54:36 a2657222 阅读数 3935

【编者按】本文编译自Tumblr博主Drew McCormack的博客,文中以其妻子所开发的iOS应用Speeches为例,告诉大家如何设置关键词,让你的应用从App Store中脱颖而出。

你是否会这样?不分昼夜开发出一款应用之后,觉得大功告成,可以高枕无忧, 整个团队紧绷的神经一下就松懈了,对于应用的提交过程也是敷衍了事。实际上,提交应用时所做的决定对你在App Store的可见度会产生巨大影响,你需要和成千上万的App竞争,任何一个细节,比如截屏、App描述、标题以及关键词都关系到App是石沉大海还是脱 颖而出。

我妻子Jennifer刚发布了她的第二个应用Speeches,用于幻灯片较少的演讲前准备以及演讲的时候用,基本上说,就是演讲者iPhone上的演讲注释。

在提交一款新应用的时候,需要知道的第一件事情就是——你的应用一出生就已 经处在一个非常不利的位置,在App Store里可能有大量类似的App,它们在评级和下载量方面都遥遥领先,就算你的App更好,也有可能被App海洋淹没,没人会知道它,使用它,所以, 一定要设置好关键词和应用标题。怎么操作?

关键词设置

我们先建立了一个小系统,把自己觉得最重要的关键词都记下来,然后进行精简。

第一步:写下人们可能输入的所有关键词(当然是关于你App的),但自己的思维毕竟有局限,所以你要使用Thesaurus及Google搜索,查相关东西激发灵感,扩充你你自己想不到的关键词(但这里要注意的是,不要找一些很泛泛的关键词,而是要具体的,具体到你App的某个用途)。比如Speeches比较明显的关键词有:Public Speaking(公众发言),Speech(演讲),cue cards(提示卡),如果使用这类关键词,比起已有的App,可能就没有那么有优势,如果使用“婚礼发言”,“辩论”这样的关键词则更有价值。

第二步:测试关键词,怎样测试?很简单 ——在App Store里边用这些关键词进行搜索。如果用你所设定的关键词搜出来成百上千的应用就不好了。最好搜索结果在10个以内,越短越好,20个以内也可接受, 超过20个就不行,太多了,用户几乎不会浏览排到后面的App,三十几位都不会看,更别提几百位以上了。

还是以Speeches为例,我们最开始的时候设定的关键词是 “keynote”和“PowerPoint”,但用这两个关键词搜出来上千个结果,然后我们决定舍弃这些关键词,使用那些让Speeches易于被发现 的关键词,就算搜索结果中Speeches排名靠后,至少别人能发现,被发现之后,能否被潜在用户使用就得你的截屏和标题来说话了。

标题设置

很多开发者在提交过程中,通常只取一个标题就什么都不管了,其实再附加一个标题说明效果会好很多,比如“Speeches——公众演讲者的演讲注释”。不要担心标题被缩减,如果被缩减了,至少应用名称还能看见,附加的说明不仅能用简短的语言描述应用,还能提高搜索排名。

App Store最近就是个难对付的情妇,虽然Speeches现在还谈不上成功,但至少我们已经为它被潜在用户发现制造了最好的机会。

注:开发者在学习这篇如何设置关键词的同时,可以思考如何通过各种手段推广自己的App,本文作者很聪明,利用大家好奇心以及求知欲,结合App Store现状写博文,变相推广自己的应用。

2018-04-12 15:22:50 kpyue 阅读数 2287

一、前言:

作为一个合格的iOS开发者,除了具有规范强悍的编码能力外,还应该具有过硬的查错纠错能力。在项目运行时,程序崩溃是不可避免的,遇到这个问题,有时会出现一大堆的crash日志,艹,貌似看不懂呀。其实没有那么可怕,我们可以将这些日志格式化,通过它来快速定位问题的所在,以便迅速搞定它。

二、分析:

首先我们来看一个crash日志,大略的介绍其中的几个重要的关键词:

 

关键词解释:

2.1、 进程信息
第一部分是闪退进程的相关信息:

Incident Identifier : 是崩溃报告的唯一标识符。

CrashReporter Key: 是与设备标识相对应的唯一键值。虽然它不是真正的设备标识符,但也是一个非常有用的情报:如果你看到100个崩溃日志的CrashReporter Key值都是相同的,或者只有少数几个不同的CrashReport值,说明这不是一个普遍的问题,只发生在一个或少数几个设备上。

Hardware Model :标识设备类型。 如果很多崩溃日志都是来自相同的设备类型,说明应用只在某特定类型的设备上有问题。上面的日志里,崩溃日志产生的设备是iPhone 4s。

Process:对项目的操作权限,上面的是可读可写

Path:崩溃文件的路径

Identifier:项目标识符,就是Bundle Id

Version:版本号

.....等等.......

2.2、基本信息
这部分给出了一些基本信息,包括闪退发生的日期Date/Time和时间Launch Time,设备的iOS版本OS Version等

2.3、异常信息
Exception Type:异常的类型。
Exception Codes :异常错误码
Termination Reason:闪退的原因,比如常见的数组越界啊,什么的。
Triggered by Thread:出现问题在哪个线程,这个比较重要,首先确定在哪个线程中出了问题,然后再去定位。

2.4、线程回溯
这部分提供应用中所有线程的回溯日志。 线程调用的一些,堆栈信息,压根看不懂,所有需要进行符号化处理。

三、解析崩溃日志

用Xcode自带的 symbolicatecrash 工具来解析的.crash文件

3.1、获取crash文件:
  a.直接从设备中获取方法如下图

    

  b.如果产品在上架过程中发生崩溃,苹果那边的测试人员给我们直接发送过来已经整理好的崩溃日志文件,只需要根据其解决问题就行。

3.2、找到app包所对应的.dSYM文件。

强调要对应.dSYM 是保存 16 进制函数地址映射信息的中转文件,我们调试的 symbols 都会包含在这个文件中,并且每次编译项目的时候都会生成一个新的 dSYM 文件。测试给过来的.crash文件中,关于崩溃的确切语句和函数部分只有16进制地址符号,并不是我们在xcode调试时看到的xxx.cpp(xxfunction xx行)这样的。一般发布一个版本需要保存好对应的.dSYM和.app包,方便分析crash。如图所示:

3.3、就是找到Xcode中的symbolicatecrash工具咯,本人用的Xcode8,路径为:

其他版本的xcode,自己百度咯,反正都差不多。把我们需要的工具直接复制到桌面上来(方便用)。

3.4、.crash文件的分析
  a.配置环境变量DEVELOPER_DIR,(配置好了就不再需要)

  b.新建一个文件夹,将第二步中获取的两个文件放在同一个文件夹中

注意:上面指的是其所在的路径。经过上面的简单几步我们就能得到格式化好的crash日志,这样就方便我们定位bug的位置了。
2017-06-05 17:12:26 Cloudox_ 阅读数 3215

说明

在处理文本的时候,第一步往往是将字符串进行分词,得到一个个关键词。苹果从很早就开始支持中文分词了,而且我们几乎人人每天都会用到,回想一下,在使用手机时,长按一段文字,往往会选中按住位置的一个词语,这里就是一个分词的绝佳用例,而iOS自带的分词效果非常棒,大家可以自己平常注意观察一下,基本对中文也有很好的效果。而这个功能也开放了API供开发者调用,我试用了一下,很好用!

效果如下:

实现

其实苹果给出了完整的API,想要全面了解的可以直接看文档:CFStringTokenizer Reference

这里说说简单的一个实现:

    // 要分词的字符串
    NSString *string = @"侠士隐锋,莽夫露刃";

    self.keywords = [[NSMutableArray alloc] init];
    CFStringTokenizerRef ref = CFStringTokenizerCreate(NULL,  (__bridge CFStringRef)string, CFRangeMake(0, string.length), kCFStringTokenizerUnitWord, NULL);// 创建分词器
    CFRange range;// 当前分词的位置
    // 获取第一个分词的范围
    CFStringTokenizerAdvanceToNextToken(ref);
    range = CFStringTokenizerGetCurrentTokenRange(ref);

    // 循环遍历获取所有分词并记录到数组中
    NSString *keyWord;
    while (range.length>0) {
        keyWord = [string substringWithRange:NSMakeRange(range.location, range.length)];
        [self.keywords addObject:keyWord];
        CFStringTokenizerAdvanceToNextToken(ref);
        range = CFStringTokenizerGetCurrentTokenRange(ref);
    }

其实逻辑很简单:创建分词器–>一个个地一次获取分词后的每个词的起始位置和长度,从而取出词。

示例里我用列表显示每个分词,比较清楚,列表的实现就不说明了,可以直接看工程代码。

值得一提的是,其分词速度很快,甚至一些网络词汇比如“木有”,一些成语等等都能够识别出,能看出这是分词的什么吗:


示例工程:https://github.com/Cloudox/OXStringTokenizerDemo
版权所有:http://blog.csdn.net/cloudox_

2017-11-10 10:59:04 jueyi1127 阅读数 1771

1 今天收到被拒理由:副标题中包括关键字



注意:

标题字数尽量控制在25个字以内;

语句一定要通顺,关键词堆叠的做法行不通了;

不要出现近音词或者是有包含关系的关键词。

不能出现竞品词;

副标题一般为一到两句话,只能出现不到3个关键词。

解决方案:修改副标题,去除副标题中关键字重复或有包含关系的


深入浅出iOS编译

阅读数 14450