我想在我的Mac OSX Mavericks中启动我的apache服务器.这是我做的:
您无权访问此服务器上的/.
这是我的/etc/apache2/httpd.conf :(我这里没有改变任何东西)
DocumentRoot "/Library/WebServer/Documents"
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all </Directory>
<Directory "/Library/WebServer/Documents">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Run Code Online (Sandbox Code Playgroud)
任何人都可以建议可能的原因吗?谢谢
我想添加两个编译器标志,一个用于ARC(-fno-objc-arc),另一个用于警告(-w).有人知道如何在特定文件的Xcode构建阶段添加两个编译器标志吗?
在我的应用程序中,当用户单击提交按钮时,我能够以编程方式将SMS发送到特定的手机号码.然后有一个来自该手机号码的响应消息,我现在想要阅读该消息并将该SMS文本填充到我的应用程序中.
我搜索了这个,发现这在iOS中是不可能的.我的问题是有没有可能访问带有用户权限的收件箱短信?
我能解释这个问题最简单的方法是使用代码示例及其输出,但实质上发生的NSDataDetector是检测字符串中包含"电话号码"字样的电话号码.
NSError *error = nil;
NSDataDetector *dataDetector = [NSDataDetector dataDetectorWithTypes:NSTextCheckingTypePhoneNumber
error:&error];
NSArray *stringsToTest = @[
@"testing phone number 0123 4567891",
@"testing some other number 0123 4567892",
@"phone number 0123 4567893",
@"blah blah 0123 4567894",
@"testing telephone number 0123 4567895"
];
for (NSString *string in stringsToTest)
{
[dataDetector enumerateMatchesInString:string
options:0
range:NSMakeRange(0, string.length)
usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop) {
NSLog(@"%@", result.phoneNumber);
}];
}
Run Code Online (Sandbox Code Playgroud)
输出:
2013-11-24 19:04:26.000 PhoneNumberDetector[21874:70b] phone number 0123 4567891
2013-11-24 19:04:26.000 PhoneNumberDetector[21874:70b] 0123 4567892
2013-11-24 19:04:26.000 PhoneNumberDetector[21874:70b] …Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个简单的类,我可以使用它来调用post web服务.
一切都很完美,除了我无法归还NSData.
这是我的代码:
+ (NSData *)postCall:(NSDictionary *)parameters fromURL:(NSString *)url{
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration];
NSURLSession *session = [NSURLSession sessionWithConfiguration:configuration];
NSMutableArray *pairs = [[NSMutableArray alloc]init];
for(NSString *key in parameters){
[pairs addObject:[NSString stringWithFormat:@"%@=%@", key, parameters[key]]];
}
NSString *requestParameters = [pairs componentsJoinedByString:@"$"];
NSURL *nsurl = [NSURL URLWithString:url];
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:nsurl];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setHTTPBody:[requestParameters dataUsingEncoding:NSUTF8StringEncoding]];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:urlRequest completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
//return data;
}];
[dataTask resume];
return nil;
}
Run Code Online (Sandbox Code Playgroud)
请注意我有,//return data …
我想了解crashlytics这样的工具是如何工作的?
就像,他们得到崩溃日志堆栈跟踪只是在投掷和系统崩溃前几分钟?他们访问崩溃后产生的某种崩溃转储?在Object-C中,我们有主要的.也许在运行时附加一些代码,但他们如何处理?我附上代码以查看此崩溃报告的位置?
您正在查看一些Objective-C代码,并发现以下声明:
OBJC_EXTERN void CLSLog(NSString *format, ...) NS_FORMAT_FUNCTION(1,2);
这意味着什么?那么,这个陈述的语法应该是什么?
提前致谢
如果我宣布String这样:var date = String()
我想检查天气是否与我nil String一样尝试:
if date != nil{
println("It's not nil")
}
Run Code Online (Sandbox Code Playgroud)
但我得到一个错误: Can not invoke '!=' with an argument list of type '(@lvalue String, NilLiteralConvertible)'
之后我试试这个:
if let date1 = date{
println("It's not nil")
}
Run Code Online (Sandbox Code Playgroud)
但仍然得到如下错误: Bound value in a conditional binding must be of Optional type
所以我的问题是,如果我以这种方式声明,我怎么能检查String不是?nil
我正在开发一个需要与现有 Objective-C api 交互的 swift 项目。不过,我在使用其中一个功能时遇到了一些障碍。在objective-c 头文件(OrderItem.h)中,我有这个函数定义:
+ (NSString *_Nullable)getOptional:(NSString *_Nonnull)foo error:(NSError *_Nullable *_Nullable)error;
Run Code Online (Sandbox Code Playgroud)
特别要注意最后一个参数;因为它是一个错误指针,在 swift 中调用此方法将需要包含在错误处理程序中(do .. catch)。
这是相应的 .m 文件:
+ (NSString *)getOptional:(NSString *)foo error:(NSError *__autoreleasing *)error
{
if([foo isEqualToString:@"abc"])
{
return @"abc item";
}
else
{
if([foo isEqualToString:@"xyz"])
{
*error = [[NSError alloc] init];
}
return nil;
}
}
Run Code Online (Sandbox Code Playgroud)
在我的 swift 文件中,我添加了以下代码:
func testGetOptional()
{
do
{
var result:NSString? = try OrderItem.getOptional("abc");
XCTAssertNotNil(result);
result = try OrderItem.getOptional("123");
XCTAssertNil(result);
}
catch let error as NSError
{
XCTFail("OrderItem lookup …Run Code Online (Sandbox Code Playgroud) 我试图写一些从这样的NSMutableArray生成的数据
// set up keychain so I can write to it… or read if needed (specially for testing)
KeychainItemWrapper *keychain = [[KeychainItemWrapper alloc] initWithIdentifier:@"KeychainTest" accessGroup:nil];
[keychain setObject:(__bridge id)(kSecAttrAccessibleWhenUnlocked) forKey:(__bridge id)(kSecAttrAccessible)];
//write to keychain
NSData *parsedRemoteSitesData = [NSKeyedArchiver archivedDataWithRootObject:parsedRemoteSitesMutableArray]; // converts MutableArray to NSData
[keychain setObject:parsedRemoteSitesData forKey:(__bridge id)(kSecValueData)]; pass data to keychain
Run Code Online (Sandbox Code Playgroud)
我的应用程序崩溃在那里我试图将NSData传递给钥匙串的最后一行,这是它给出的错误.
** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSConcreteMutableData dataUsingEncoding:]: unrecognized selector sent to instance
Run Code Online (Sandbox Code Playgroud)
我认为这意味着我没有编码我的NSData,同时将数组传递给它,但我不确定..我希望有人可以告诉我或提供一些示例代码来解决这个问题.
任何帮助将不胜感激.