标签: nslog

如何在iOS上使用NSLog打印出字符串常量

我有一个像这样定义的字符串常量:

#define kMyString @"This is my string text!";
Run Code Online (Sandbox Code Playgroud)

代码中的某处我想用NSLog打印出这段代码:

NSLog(@"This is it: %@",kMyString);
Run Code Online (Sandbox Code Playgroud)

但是得到一个构建错误:Expected expression.

我已经看过Apple的格式说明符,但无法弄明白.

有人可以向我解释如何做到这一点?

谢谢!

string iphone constants nslog ios

22
推荐指数
2
解决办法
6万
查看次数

NSLog和DLog之间的区别

谁能告诉我NSLog和之间有什么区别DLog

当我查看这个项目代码时,我发现了这个DLog:http://code.google.com/p/iphone-socks-proxy/

logging cocoa objective-c nslog

22
推荐指数
4
解决办法
2万
查看次数

ObjectiveC的NSLog和Printf语句之间的区别

我想知道Objective-C中NSLogPrintf语句和语句之间的区别(用于应用程序......!)

为什么所有开发人员都使用NSLog而不是Printf

两者看起来相似,但内部工作有什么不同?

他们可以在哪个方面加以区分?

iphone printf objective-c nslog

21
推荐指数
3
解决办法
2万
查看次数

如何在NSLog中打印NSRange

假设我的范围被创建为

NSRange myRange = {0,100};
Run Code Online (Sandbox Code Playgroud)

如何myRange在NSLog中打印?以下不起作用

NSLog(@"my range is %@",myRange);
Run Code Online (Sandbox Code Playgroud)

objective-c nslog ios nsrange

21
推荐指数
2
解决办法
5839
查看次数

为什么我的Safari App Extension NSLog消息不会出现在Xcode的控制台中?

我正在关注Apple的创建Safari App Extension的指南.简而言之,我:

  • 使用Cocoa Application模板创建了一个新的Xcode项目(在Xcode 8.1中,在macOS 10.12 Sierra上)
  • 使用Safari扩展模板在应用程序中创建了一个新目标
  • 运行应用程序一次,以确保构建Safari App扩展
  • 在Safari的"开发"菜单中选择"允许未签名的扩展"选项
  • 在Safari的"扩展"首选项窗格中启用了扩展

扩展程序的工具栏按钮出现在Safari中.Apple的指南说当我点击工具栏按钮时我应该在控制台中看到NSLog消息,但我什么都没看到.

我已经编辑了SafariExtensionHandler.swift来向扩展注入的脚本发送消息:

override func toolbarItemClicked(in window: SFSafariWindow) {
    // This method will be called when your toolbar item is clicked.
    NSLog("The extension's toolbar item was clicked")

    window.getActiveTab(completionHandler: { (activeTab) in
        activeTab?.getActivePage(completionHandler:  { (activePage) in
            activePage?.dispatchMessageToScript(withName: "toolbarItemClicked", userInfo: nil)

        })
    })
}
Run Code Online (Sandbox Code Playgroud)

我编辑了注入的脚本(script.js)来警告该消息:

safari.self.addEventListener("message", function (event) {
    alert("We got a message from the extension! - " + event.name + ": " + event.message);
});
Run Code Online (Sandbox Code Playgroud)

单击工具栏按钮时出现警报(当我在webkit.org上的页面上时,因为我已经离开了默认的SFSafariWebsiteAccess设置),因此扩展程序正在工作并注册了点击.但我没有在Xcode的控制台或Console应用程序中看到NSLog.

我是一个真正的Xcode新手,所以我确定我错过了一些明显的东西 …

xcode nslog swift safari-app-extension

20
推荐指数
1
解决办法
1841
查看次数

记录到iPhone上的文件

将日志语句写入iPhone应用程序中的文件或数据库的最佳方法是什么?

理想情况下,NSLog()输出可以使用freopen()重定向到文件,但我看到几个报告它不起作用.有没有人已经这样做或有任何想法如何最好地做到这一点?

谢谢!

iphone logging nslog

18
推荐指数
4
解决办法
3万
查看次数

Objective C覆盖自定义对象的%@

我想在NSLog中覆盖自定义对象的默认打印功能;

例如:

MyObject *myObject = [[MyObject alloc] init];
NSLog(@"This is my object: %@", myObjcet);
Run Code Online (Sandbox Code Playgroud)

将打印出来:

This is my object: <MyObject: 0x4324234>
Run Code Online (Sandbox Code Playgroud)

我在MyObject中覆盖了一个函数来打印出更漂亮的描述吗?

干杯! 缺口.

objective-c nslog

18
推荐指数
2
解决办法
4284
查看次数

有没有办法记录Objective-C实例的所有属性值

我只是想知道是否有一种快速简便的方法可以将所有属性的各种值打印到日志中以进行调试.就像我想知道所有BOOL,浮点数等的值是什么.

properties objective-c nslog

18
推荐指数
3
解决办法
8187
查看次数

Xcode 8不显示整个NSLog输出

升级到Xcode 8 GM后,我注意到NSLog没有将整个日志消息打印到控制台.当针对下载大量信息的API工作时尤其明显,例如REST API从数据库下载所有产品,它只显示第一个产品的前30个键,其余信息被剪切...

我打印数组和字典,如果这有任何区别.

NSDictionary *allProducts = responseFromAPI;
NSLog(@"All products:%@", allProducts);
Run Code Online (Sandbox Code Playgroud)

有没有人注意到这个?有人知道如何解决这个问题吗?

xcode objective-c nslog ios

18
推荐指数
1
解决办法
5235
查看次数

如何将nslog输出重定向到文件而不是控制台

我在OS X上运行了cocoa应用程序.我已经使用NSLog进行调试.现在我想将日志语句重定向到文件而不是控制台.

我已经使用过这种方法,但它会导致在Console和文件中记录.

- (BOOL)redirectNSLog
{
    // Create log file
    [@"" writeToFile:@"/NSLog.txt" atomically:YES encoding:NSUTF8StringEncoding error:nil];
    id fileHandle = [NSFileHandle fileHandleForWritingAtPath:@"/NSLog.txt"];
    if (!fileHandle)    return NSLog(@"Opening log failed"), NO;
    [fileHandle retain];

    // Redirect stderr
    int err = dup2([fileHandle fileDescriptor], STDERR_FILENO);
    if (!err)   return  NSLog(@"Couldn't redirect stderr"), NO;

    return  YES;
}
Run Code Online (Sandbox Code Playgroud)

是否有可能在控制台中没有日志语句但只能在文件中?

macos xcode cocoa nslog

17
推荐指数
3
解决办法
2万
查看次数