问题描述:在iOS8中调用-[UIApplication setApplicationIconBadgeNumber:]会出现如下没有权限的提示:
Attempting to badge the application icon but haven't received permission from the user to badge the application
问题分析:
用如下方法注册通知权限后,App会弹出一个框进行确认。在确认之前或者被否决,都是没有权限设置红点的。
UIUserNotificationSettings* notificationSettings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeAlert | UIUserNotificationTypeBadge | UIUserNotificationTypeSound categories:nil];
[[UIApplication sharedApplication] registerUserNotificationSettings:notificationSettings];
iOS8中新增了通知授权后的回调:
- (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings
问题解决:
把所有
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions中的-[UIApplication setApplicationIconBadgeNumber:]
移到
- (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings
回调中
分类: iOS
UITableView第一个Header不显示的问题
问题描述:今天让设置项适配iPad,用[tableView: viewForHeaderInSection:]函数自定义UITableView的Header,发现第一个Header没有显示。
问题解决:
原因是没有给[tableView: viewForHeaderInSection:]返回UIView设置高度。
并且也没有通过-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section指定高度。
前面2个原因实现一个便可以显示出第一个Header。
Xcode6 beta2 使用openURL无效
问题描述:在Xcode6 beta2中使用[extensionContext openURL: completionHandler:]无效
问题分析:查看xcode6 beta2 realse note,发现xcode这版openURL在extension不可用
• openURL does not work from an extension.
Xcode6 beta2 不能调试extension问题
问题描述:在用Xcode6 beta2联机调试输入法时出现如下问题
Message from debugger: Terminated due to signal 9
问题分析:查看xcode6 beta2 realse note,发现xcode这版不支持extension的调试
• Debugging Share or Action app extensions does not work in this release. You will see an error
message similar to: "The app
from debugger: Terminated due to signal 9" (17303593)!
PS:重启电脑和真机都无法解决此问题,上午坏了,下午莫名好了,用了一会又坏了
Swift等于符号问题
问题描述:Xcode对如下代码
result= point1
报如下错误
Prefix/postfix '=' is reserved
问题解决:Swift对=前后有空格会认为是保留运算附,改为
result=point1
Swift下SourceKitService Terminated问题
Swift下CALayer的bug
问题描述:最近在用Swift了,使用CALayer,报如下错误
Use of module 'CALayer' as a type
问题解决:
添加引用:import QuartzCore
报错估计是一个bug
PS:Xcode6.0 beta1
Xcode5下iOS6.1的Tests运行不了
问题描述:在Xcode 5.1.1中用模拟器iOS 6.1跑Tests提示如下错误:
2014-06-18 14:40:49.581 sim[15948:303] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/usr/bin/sim: Dead bootstrap subset.
2014-06-18 14:40:50.817 sim[15948:303] Error spawning child process: No such file or directory
未找到方法,好歹只有测试跑在iOS6.1跑不了
通知中心推送问题
问题描述:输入法终于转正了,原来通过越狱方式(CFMessagePort)弹通知中心,现在改为App Store版本。这今天试用Baidu Push,遇到如下问题:
2014-06-11 15:35:22.586 PushDemo[756:60b] error:Error Domain=NSCocoaErrorDomain Code=3000 "未找到应用程序的“aps-environment”的权利字符串" UserInfo=0x15d74ea0 {NSLocalizedDescription=未找到应用程序的“aps-environment”的权利字符串}
问题分析:原因是设备上没有.mobileprovision文件有如下许可的字段:
问题解决:重新生成新的.mobileprovision并安装到设备上
__weak不能使用问题
问题描述:输入法加了一个新类库,报如下错误:
The current deployment target does not support automated __weak references
问题解决:
ARC是从4.2以上版本开始支持的,但是不能使用__weak。
从5.0开始支持所有ARC。
在project->info->ios Deployment Target 将target版本改为5.0或者5.0以上。