1.40.0 • Published 8 months ago

capacitor-jok-helper v1.40.0

Weekly downloads
4
License
MIT
Repository
github
Last release
8 months ago

Add this code in AppDelegate.swift-> func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?) -> UIInterfaceOrientationMask

    NotificationCenter.default.addObserver(forName: Notification.Name("getPushNotificationsStateRequest"), object: nil, queue: OperationQueue.main) { (notification) in
        
        
        let status: OSPermissionSubscriptionState = OneSignal.getPermissionSubscriptionState()

        let hasPrompted = status.permissionStatus.hasPrompted
        let userStatus = status.permissionStatus.status

        let isSubscribed = status.subscriptionStatus.subscribed
        let userSubscriptionSetting = status.subscriptionStatus.userSubscriptionSetting
        let userId = status.subscriptionStatus.userId
        let pushToken = status.subscriptionStatus.pushToken

        NotificationCenter.default.post(name: Notification.Name("getPushNotificationsStateResult"), object: nil, userInfo: [
                "hasPrompted": hasPrompted,
                "userStatus": userStatus.rawValue,
                "isSubscribed": isSubscribed,
                "userSubscriptionSetting": userSubscriptionSetting,
                "userId": userId,
                "pushToken": pushToken
            ]
        )

        
    }
    
    
    NotificationCenter.default.addObserver(forName: Notification.Name("askPushNotificationsPermissionRequest"), object: nil, queue: OperationQueue.main) { (notification) in
        
        OneSignal.promptForPushNotifications(userResponse: { accepted in
            
            NotificationCenter.default.post(name: Notification.Name("askPushNotificationsPermissionResult"), object: nil, userInfo: [
                    "accepted": accepted
                ]
            )
        })
    }

    NotificationCenter.default.addObserver(forName: Notification.Name("SET_ORIENTATION_LOCK"), object: nil, queue: OperationQueue.main) { (notification) in
        
        if let data = notification.userInfo as? [String: Any]
        {
            self.orientationLock = (data["orientationLock"] ?? UIInterfaceOrientationMask.all) as! UIInterfaceOrientationMask
            
            let preferredOrientation = (data["preferredOrientation"] ?? UIInterfaceOrientation.unknown) as! UIInterfaceOrientation

            
            var value = preferredOrientation.rawValue
            
            if (self.orientationLock == UIInterfaceOrientationMask.portrait && preferredOrientation == UIInterfaceOrientation.unknown) {
                value = UIInterfaceOrientation.portrait.rawValue
            }
            
            if (self.orientationLock == UIInterfaceOrientationMask.landscape && preferredOrientation == UIInterfaceOrientation.unknown) {
                value = UIInterfaceOrientation.landscapeRight.rawValue
            }
            
            // change orientation also, if preferredOrientation was passed
            if (value != UIInterfaceOrientation.unknown.rawValue) {
                UIDevice.current.setValue(value, forKey: "orientation")
                UINavigationController.attemptRotationToDeviceOrientation()
            }
        }
    }
    

Add variable in AppDelegate class

   public var orientationLock: UIInterfaceOrientationMask = UIInterfaceOrientationMask.portrait

Create CustomCAPBridgeViewController.swift file

import Foundation
import Capacitor

public class CustomCAPBridgeViewController : CAPBridgeViewController {

        override public func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
    
            NotificationCenter.default.post(name: Notification.Name("ORIENTATION_CHANGE"), object: nil, userInfo: [
                "isLandscape": UIDevice.current.orientation.isLandscape,
                "isPortrait": UIDevice.current.orientation.isPortrait,
                "isFlat":UIDevice.current.orientation.isFlat,
                "rawValue": UIDevice.current.orientation.rawValue,
                ]
            )
        }
    
}
1.39.0

8 months ago

1.40.0

8 months ago

1.37.0

9 months ago

1.38.0

8 months ago

1.35.0

9 months ago

1.36.0

9 months ago

1.34.2

9 months ago

1.34.1

1 year ago

0.34.1

4 years ago

0.34.0

4 years ago

0.32.0

4 years ago

0.33.0

4 years ago

0.31.1

4 years ago

0.30.0

4 years ago

0.29.0

5 years ago

0.27.0

5 years ago

0.26.0

5 years ago

0.25.0

5 years ago

0.23.0

5 years ago

0.22.0

5 years ago

0.21.0

5 years ago

0.20.0

5 years ago

0.19.0

5 years ago

0.18.0

5 years ago

0.17.0

5 years ago

0.16.0

5 years ago

0.15.0

5 years ago

0.14.0

5 years ago

0.13.0

5 years ago

0.12.1

5 years ago

0.12.0

5 years ago

0.11.0

5 years ago

0.10.0

5 years ago

0.9.4

5 years ago

0.9.3

6 years ago

0.9.2

6 years ago

0.9.0

6 years ago

0.9.1

6 years ago

0.8.2

6 years ago

0.8.1

6 years ago

0.8.0

6 years ago

0.7.1

6 years ago

0.7.0

6 years ago

0.6.1

6 years ago

0.6.0

6 years ago

0.5.1

6 years ago

0.5.0

6 years ago

0.4.0

6 years ago

0.3.0

6 years ago

0.2.0

6 years ago

0.1.0

6 years ago

0.0.6

6 years ago

0.0.5

6 years ago

0.0.4

6 years ago

0.0.3

6 years ago

0.0.2

6 years ago

0.0.1

6 years ago