Monitor iOS app version easily.

Overview

AppVersionMonitor

CI Status Version License Platform

Monitor iOS app version easily.

You can get previous version and installation history.

Usage

To run the example project, clone the repo, and run pod install from the Example directory first.

Requirements

Installation

AppVersionMonitor is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod "AppVersionMonitor"

Usage

Setup

// AppDelegate

func applicationDidFinishLaunching(application: UIApplication) {

    AppVersionMonitor.sharedMonitor.startup()
}

Get MarketingVersion (CFBundleShortVersionString)

let currentVersion: AppVersion = AppVersion.marketingVersion
let versionString: String = AppVersion.marketingVersion.versionString // "1.2.3"

Get installed version

let installedVersions: [AppVersion] = AppVersionMonitor.sharedMonitor.installedVersions

Compare Version

AppVersion.marketingVersion > AppVersion("1.2.3")
AppVersion("1.2.3") < AppVersion("3.2.1")
AppVersion("1.2.3") < "3.2.1"

You can check app version status easily.

switch AppVersionMonitor.sharedMonitor.state {
case .Installed:

// Do something when app installed.
// Happy! 🍻
// ex. Start tutorial.

case .NotChanged:

// Do something when version not changed.
// Peace 😌
// Nothing to do?

case .Upgraded(let previousVersion: AppVersion):

// Do something when version upgraded.
// Yeah! 😝
// ex. Migrate App Data.

case .Downgraded(let previousVersion: AppVersion):

// Do something when version downgraded. (Impossible normally)
// What happened? 😡
// ex. Purge App Data.

}

Author

muukii [email protected]

License

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

You might also like...
a iOS network debug library, monitor HTTP requests
a iOS network debug library, monitor HTTP requests

NetworkEye README δΈ­ζ–‡ NetworkEye,a iOS network debug library,monitor HTTP requests. It can be detected HTTP request include web pages, NSURLConnection,

Baby Monitor iOS

Baby Monitor iOS Welcome to the Baby Monitor project. It's an application made for monitoring babies, which can help parents take care of their childr

MobilePillowTalkLite - An iOS & SwiftUI server monitor tool for linux based machines using remote proc file system with script execution
MobilePillowTalkLite - An iOS & SwiftUI server monitor tool for linux based machines using remote proc file system with script execution

# PillowTalk - iOS/Lite bbtop PillowTalk - ζž•ε€΄ι€Όι€Ό - bbtop! An iOS & SwiftUI serv

Monitor for displaying process traffic on Mac Status bar
Monitor for displaying process traffic on Mac Status bar

ITraffic-monitor-for-mac Monitor for displaying process traffic on Mac Status bar MacOS version required The macOS version should = 10.15, since the

Modern networking support to monitor network connectivity

ConnectivityKit Adapting to changes in network connectivity can allow for suspending or resuming network activity. When entering an elevator or going

Monitor changes to files and directories using kernel event notifications (kqueue) in Swift

SKQueue SKQueue is a Swift libary used to monitor changes to the filesystem. It wraps the part of the kernel event notification interface of libc, kqu

Vitals - A tiny macOS process monitor lives in the menu bar, keeping track of resource usage
Vitals - A tiny macOS process monitor lives in the menu bar, keeping track of resource usage

Vitals lives in the menu bar, keeping track of resource usage in the background so you can summon it instantly at any time.

You can monitor your APIs and websites on your menubar. Gives you status code πŸŽ‰ Cool & good
You can monitor your APIs and websites on your menubar. Gives you status code πŸŽ‰ Cool & good

Hope not. Monitor your APIs and websites on your menubar. For macOS. Right now! YyeeeHav!

NetworkLight - Ventura only networkquality monitor

NetworkLight NetworkLight is a small menubar wrapper for networkquality to requlary check the network capacity. The data is saved and can be exported

Tip-Calculation- - A program for calculate the tip. You can easily calculate it and you can split money easily
Tip-Calculation- - A program for calculate the tip. You can easily calculate it and you can split money easily

Tip-Calculation- It is a program for calculate the tip. You can easily calculate

A Library for iOS developers to check newer version of app from the app store
A Library for iOS developers to check newer version of app from the app store

swift-app-update-checker A very simple solution check new version of your application is available on store or not. Example To run the example project

This Xcode plugin shows Xcode app version in the Dock and App Switcher icon
This Xcode plugin shows Xcode app version in the Dock and App Switcher icon

Xcode Icon Version Tired of this Xcode icon always showing multiple times in your App Switch with no help watshoever as to which version you are curre

This is my version of the H4X0R News app, taught by Angela Yu on the iOS Development Bootcamp.
This is my version of the H4X0R News app, taught by Angela Yu on the iOS Development Bootcamp.

H4X0R News πŸ“° (I didn't choose the name btw) What is it about? H4X0R News is an app that shows the front page news from Hacker News Website, and when

Simple and Lightweight App Version Tracking for iOS written in Swift

AEAppVersion Simple and lightweight iOS App Version Tracking written in Swift I made this for personal use, but feel free to use it or contribute. For

Version of PopcornTime app for iOS based on libtorrent and MobileVLCKit.
Version of PopcornTime app for iOS based on libtorrent and MobileVLCKit.

PopcornTime for iOS Version of PopcornTime app for iOS based on libtorrent and MobileVLCKit. There is still a lot of work to do, but in most cases it

UI Component. This is a copy swipe-panel from app: Apple Maps, Stocks. Swift version
UI Component. This is a copy swipe-panel from app: Apple Maps, Stocks. Swift version

ContainerController UI Component. This is a copy swipe-panel from app: https://www.apple.com/ios/maps/ Preview Requirements Installation CocoaPods Swi

Notify users when a new version of your app is available and prompt them to upgrade.
Notify users when a new version of your app is available and prompt them to upgrade.

Siren 🚨 Notify users when a new version of your app is available and prompt them to upgrade. Table of Contents Meta About Features Screenshots Ports

An unofficial version of the Sandwiches app and pre-built materials similar to those used in the Introduction to SwiftUI session video from WWDC20

Unofficial Sandwiches The WWDC20 Session Introduction to SwiftUI provides a tutorial-like walk-through of building a list-detail SwiftUI app from scra

Comments
  • Updated Package.swift and swift version

    Updated Package.swift and swift version

    Primary changes were performed through XCode's swift migration tool to update the swift version to 5.0. Node code changes were needed, though some project file settings were modified to reflect this.

    This also updates the Package.swift for use with newer swift versions too and allows for other tools like Accio to build this as a dependency.

    opened by made2k 0
  • swiftlint

    swiftlint

    AppVersionMonitor produces errors and warnings when using swiftlint.

    AppVersionMonitor/AppVersion.swift:65:65: error: Force Cast Violation: Force casts should be avoided. (force_cast)

    AppVersionMonitor/AppVersion.swift:74:66: error: Force Cast Violation: Force casts should be avoided. (force_cast)

    AppVersionMonitor/AppVersion.swift:23: warning: Vertical Whitespace Violation: Limit vertical whitespace to a single empty line. Currently 2. (vertical_whitespace)

    AppVersionMonitor/AppVersion.swift:110: warning: Trailing Newline Violation: Files should have a single trailing newline. (trailing_newline)

    AppVersionMonitor/AppVersion.swift:41:9: warning: For Where Violation: where clauses are preferred over a single if inside a for. (for_where)

    AppVersionMonitor/AppVersionMonitor.swift:23: warning: Vertical Whitespace Violation: Limit vertical whitespace to a single empty line. Currently 2. (vertical_whitespace)

    opened by fnolis 0
  • [Question] Installed state meet when after app update completed?

    [Question] Installed state meet when after app update completed?

    I have a question about installed state, app run to installed state when the first time install app or after update (or downgrade) app right? Sorry, I need to make sure this because I can't test this case at time. Thanks.

    opened by qhu91it 0
  • What does

    What does "startup()" do?

    @muukii

    Because looking at the code the "AppVersionMonitor.sharedMonitor.startup()" function is empty.

    open class AppVersionMonitor {   
    ...
        open func startup() {
              πŸ€”
        }
            
    }
    
    opened by otymartin 1
Releases(1.4.1)
Owner
エウレカ
This is eureka, Inc. organization.
エウレカ
Versions tracker for your iOS, macOS, and tvOS app

VersionTrackerSwift VersionTrackerSwift is a versions / builds tracker to know which version has been installed by a user. Usage In your ApplicationDe

Tom Baranes 82 Oct 5, 2022
Monitor iOS app version easily.

AppVersionMonitor Monitor iOS app version easily. You can get previous version and installation history. Usage To run the example project, clone the r

エウレカ 256 Jan 4, 2023
Resource monitor - A flutter plugin for Android and IOS to monitor CPU and RAM usage of device.

resource_monitor A flutter plugin for Android and IOS to monitor CPU and RAM usage of device. TODO Implement Android Side of this plugin. Add listener

Skandar Munir 1 Nov 11, 2022
A way to easily add Cocoapod licenses and App Version to your iOS App using the Settings Bundle

EasyAbout Requirements: cocoapods version 1.4.0 or above. Why you should use Well, it is always nice to give credit to the ones who helped you ?? Bonu

JoΓ£o Mourato 54 Apr 6, 2022
Doll - A mac app to help monitor your app badges

Doll is a Mac app that help you catch up important messages! In macOS, It feels

null 328 Jan 4, 2023
BitPrice - an iOS app that display and monitor the current Bitcoint (BTC) rate

BitPrice - an iOS app that display and monitor the current Bitcoint (BTC) rate

Bruno Tortato Furtado 37 Dec 11, 2022
Overlook - A commandline app that will watch your folder and monitor any changes

A commandline app that will watch your folder and monitor any changes. When a change occurs, Overlook will execute (or restart) a command you specify. Overlook is platform independent and will work with anything from writing a README file, to developing a service.

Wess Cope 150 Aug 9, 2022
Monitor and terminate/throttle CPU hogging processes in iOS

Vedette Monitor and terminate/throttle CPU hogging processes in iOS Vedette is a CPU usage monitoring tweak for processes in iOS like apps and daemons

null 13 Dec 22, 2022
iOS Network monitor/interceptor framework written in Swift

NetShears NetShears is a Network interceptor framework written in Swift. NetShears adds a Request interceptor mechanisms to be able to modify the HTTP

Divar 119 Dec 21, 2022
PillowTalk - An iOS & SwiftUI server monitor tool for linux based machines using remote proc file system with script execution.

An iOS & SwiftUI server monitor tool for linux based machines using remote proc file system with script execution.

Lakr Aream 416 Dec 16, 2022