Shows FPS, CPU usage, app and iOS versions above the status bar and report FPS and CPU usage via delegate.
Swift Shell Objective-C Ruby
Latest commit 787ea95 Jan 19, 2017 @dani-gavrilov new way to count FPS

README.md

GDPerformanceView-Swift

Shows FPS, CPU usage, app and iOS versions above the status bar and report FPS and CPU usage via delegate.

Carthage compatible Pod Version Swift Version Swift Version Swift Version Plaform License MIT

Alt text Alt text Alt text Alt text

Installation

Simply add GDPerformanceMonitoring folder with files to your project, or use CocoaPods.

Carthage

Create a Cartfile that lists the framework and run carthage update. Follow the instructions to add $(SRCROOT)/Carthage/Build/iOS/GDPerformanceView.framework to an iOS project.

github "dani-gavrilov/GDPerformanceView-Swift" ~> 1.1.0

Don't forget to import GDPerformanceView by adding:

import GDPerformanceView

CocoaPods

You can use CocoaPods to install GDPerformanceView by adding it to your Podfile:

platform :ios, '8.0'
use_frameworks!

target 'project_name' do
    pod 'GDPerformanceView-Swift', '~> 1.1.0'
end

Don't forget to import GDPerformanceView by adding:

import GDPerformanceView_Swift

Usage example

Simply start monitoring. Performance view will be added above the status bar automatically. Also, you can configure appearance as you like or just hide the monitoring view and use its delegate.

Start monitoring

Call to start or resume monitoring and show monitoring view.

GDPerformanceMonitor.sharedInstance.startMonitoring()
self.performanceView = GDPerformanceMonitor.init()
self.performanceView?.startMonitoring()

Stop monitoring

Call when you're done with performance monitoring.

self.performanceView?.stopMonitoring()

Call to hide and pause monitoring.

self.performanceView?.pauseMonitoring()

Configuration

Call to change appearance.

self.performanceView?.configure(configuration: { (textLabel) in
    textLabel?.backgroundColor = .black
    textLabel?.textColor = .white
    textLabel?.layer.borderColor = UIColor.black.cgColor
})

Call to change output information.

self.performanceView?.appVersionHidden = true

self.performanceView?.deviceVersionHidden = true

Call to hide monitoring view.

self.performanceView?.hideMonitoring()

Call to change status bar appearance.

self.performanceView?.configureStatusBarAppearance(prefersStatusBarHidden: false, preferredStatusBarStyle: .lightContent)

Start monitoring and configure

self.performanceView?.startMonitoring(configuration: { (textLabel) in
    textLabel?.backgroundColor = .black
    textLabel?.textColor = .white
    textLabel?.layer.borderColor = UIColor.black.cgColor
})

Delegate

Set the delegate and implement its method.

self.performanceView?.delegate = self
func performanceMonitorDidReport(fpsValue: Int, cpuValue: Float) {
    print(fpsValue, cpuValue)
}

Requirements

  • iOS 8.0+
  • xCode 8.2+

License

GDPerformanceView is available under the MIT license. See the LICENSE file for more info.