Shows FPS, CPU usage, app and iOS versions above the status bar and report FPS and CPU usage via delegate.
Swift Ruby Objective-C
Latest commit 805eb8e Jan 20, 2017 @dani-gavrilov Change readme

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.2

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.2'
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.

You can find example projects here

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+

Meta

Daniil Gavrilov - VK - FB

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