相关疑难解决方法(0)

Swift:print()vs println()vs NSLog()

什么之间的区别print,NSLog以及println何时该使用的呢?

例如,在Python中,如果我想打印字典,我只是print myDict,但现在我有2个其他选项.我应该如何以及何时使用它们?

debugging console logging swift

420
推荐指数
6
解决办法
27万
查看次数

CoreLocationManager 从不暂停?

试图让我的应用程序使用更少的电量,它总是在后台跟踪位置,但我希望它自动暂停,以便我可以打开区域监视,并在用户稍微移动时使用它来恢复精确的位置监视。

我已经打开应用程序半小时了,定位服务没有暂停。我认为自从 Apple 在 iOS 13 中更改位置信息以来一直是这种情况?我不太确定。我可以在网上找到的所有文档似乎都非常过时。

非常感谢任何建议,相关代码如下:

init() {
        locationManager = CLLocationManager()
        locationManager.delegate = self
        locationManager.desiredAccuracy = kCLLocationAccuracyBest
        locationManager.distanceFilter = 10
        locationManager.activityType = .fitness
        locationManager.requestAlwaysAuthorization()
        locationManager.allowsBackgroundLocationUpdates = true
        locationManager.pausesLocationUpdatesAutomatically = true
        locationManager.showsBackgroundLocationIndicator = true
        locationManager.startUpdatingLocation()
    }
    func locationManagerDidPauseLocationUpdates(_ manager: CLLocationManager) {
        delegate?.paused(tracker: self)
        print("MT | LOCATION SERVICES PAUSED!") <---- NEVER GETTING CALLED (been running for 40 minutes now, no location updates, still going though?)
        // if not already, start region monitoring

    }
 func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) …
Run Code Online (Sandbox Code Playgroud)

core-location ios swift

6
推荐指数
1
解决办法
592
查看次数

如何从iPad/iPhone检索使用os_log记录的消息?

我在Swift中使用新的统一日志API.

所以我创建了一个记录器并使用它如下:

let testLogger = OSLog(subsystem: "my.subsystem", category: "test")
os_log("just a test: %@", log: testLogger, type: .error, "error")
Run Code Online (Sandbox Code Playgroud)

如果iOS设备与Mac断开连接,如何检索记录的消息?

我知道新的控制台应用程序会显示设备连接到Mac时记录的消息.但是,我想检索设备与计算机断开连接时记录的消息.我怎样才能做到这一点?

谢谢.

logging ios swift oslog sysdiagnose

5
推荐指数
1
解决办法
2458
查看次数

如何打开/查看设备上存储的 iOS OSLogs?

我正在使用 Apple 的框架创建日志os.log。我只是制作如下日志:

os_log("Update: Lat: %{public}f | Long:  %{private}f | RemainingTime: %{public}f ", log: log, type: .default, location.coordinate.latitude, location.coordinate.longitude, UIApplication.shared.backgroundTimeRemaining).
Run Code Online (Sandbox Code Playgroud)

我确实在控制台和调试器中看到了日志。

我已阅读此内容,并且成功下载了该容器(只是不确定该容器是否包含我要查找的内容,或者这是否是查看的正确位置)。然后我单击“显示包”:

但之后我只看到:

在此输入图像描述

我查看了所有文件。这些文件只包含以下数字:

在此输入图像描述

我应该做一些额外的事情还是我找错了地方?


EDIT1:根据日航的建议:

我调查了(文档、图书馆、tmp)。有plistktx文件。和function.data&map.data文件。

我查看了这些文件:

在此输入图像描述

还有这些文件:

在此输入图像描述

我尝试用控制台打开它们,但得到如下图所示的乱码结果:

在此输入图像描述


编辑2:

所以首先我没有权限打开/var/db/diagnostics,我不得不这样做sudo bash。然后我做了cd /var/db/diagnostics并看到了这些文件。

Events
FaultsAndErrors
Oversize
SpecialHandling
StateDumps
TTL
logdata.Persistent.20170724T212501.tracev3
logdata.Persistent.20170725T015616.tracev3
logdata.Persistent.20170725T134017.tracev3
logdata.Persistent.20170725T171020.tracev3
logdata.Persistent.20170725T213354.tracev3
logdata.Persistent.20170726T002702.tracev3
logdata.Persistent.20170726T144412.tracev3
logdata.Persistent.20170726T202128.tracev3
logdata.Persistent.20170727T021506.tracev3
logdata.Persistent.20170727T033929.tracev3
logdata.Persistent.20170727T075325.tracev3
logdata.Persistent.20170727T145233.tracev3
logdata.statistics.0.txt
logdata.statistics.1.txt
shutdown.log
Run Code Online (Sandbox Code Playgroud)

然后我做了open -a console logdata.Persistent.20170725T015616.tracev3(我 …

xcode logging swift oslog

1
推荐指数
2
解决办法
4634
查看次数

标签 统计

swift ×4

logging ×3

ios ×2

oslog ×2

console ×1

core-location ×1

debugging ×1

sysdiagnose ×1

xcode ×1