Baked Creator - GluedIn
Baked Creator Tool SDK
The SDK has an option to use the creator tool as a separate component that can be integrated into existing applications and can be launched via any user-defined CTA.
Integration steps to add Baked Feed SDK:
Add the below pod dependency into your pod file
  • To add only core module pod dependency, add below
        pod 'GluedInCoreSDK'
  • To add Baked Creator module into the project, add below pod SDK along with the core dependency
        pod 'GluedInCreatorSDK'
  • Class Name: GluedinCreator
  • Protocol class: CreatorProtocol, CreatorOptionsViewDelegate
  • Available Callback Methods: Below are the methods which will be triggered on multiple events like the content recording.
      
      //MARK: - Baked creator delegate method
    
    func openCreator() {
        print("open creator delegate method")
    }
    
    func dismissCreator() {
        print("dismissCreator delegate method")
    }
    
    func startRecording() {
        print("startRecording delegate method")
    }
    
    func stopRecording() {
        print("stopRecording delegate method")
    }
    
    func addFilter() {
        print("addFilter delegate method")
    }
    
    func removeFilter() {
        print("removeFilter delegate method")
    }
    
    func selectSound() {
        print("selectSound delegate method")
    }
    
    func uploadFromGallery() {
         print("uploadFromGallery delegate method")
    }
    
    func postVideo() {
         print("postVideo delegate method")
    }
    
    func saveToDraft() {
         print("saveToDraft delegate method")
    }
    
    func onVideoCreated(success: Bool, assetPath: String, assetType: String) {
          print("onVideoCreated delegate method")
          print(assetPath)
          print(assetType)
    }
    
    func didPosted(navigationController: UINavigationController?) {
          print("didPosted delegate method")
    }
    
    func goToProfile(user: String?, navigationController: UINavigationController?) {
          print("goToProfile delegate method")
          print(user)
    }
    func didSelectCancelOption() {
            print("Creator :- didSelectCancelOption")
        }
    
  • Integration Steps:
    Protocol Methods:
    • openCreator()
    • dismissCreator()
    • startRecording()
    • stopRecording()
    • addFilter()
    • removeFilter()
    • selectSound()
    • uploadFromGallery()
    • postVideo()
    • saveToDraft()
    • onVideoCreated(success: Bool, assetPath: String, assetType: String)
    • didPosted(navigationController: UINavigationController?)
    • goToProfile(user: String?, navigationController: UINavigationController?)
    • didSelectCancelOption
    Convenient to load baked creator module and its protocol callback methods.
                              
      self.navigationController?.pushViewController(
         GluedInCreator.shared.getCreatorCameraScreenBasedOn(
         creatorContentType: .video,
         delegate: self) ?? UIViewController(),
                animated: true)
    ]
    ]
    
    How to call ?
      // Baked Launch method to launch creator module from camera screen
    
    // Option to open Image or Video recording on camera screen
    // Controller can be open from any button or bottom bar or load screen or any user interaction option
    
    @IBAction func callToLaunchedBackedCreatorMethod(_ sender: Any) {
        self.navigationController?.pushViewController(
            GluedInCreator.shared.getCreatorCameraScreenBasedOn(
                 creatorContentType: .video,
                 delegate: self) ?? UIViewController(),
             animated: true)
     }
      
      
    
  • Baked Creator Option controller launch on Button click:
    SDK class: GluedinCreator
    methods: getCreatorOptionsScreen
    didSelectCreatorOption()
    Convenient to load baked creator option screen module → Creator camera module and its protocol callback methods.
                              
    self.navigationController?.pushViewController(
       GluedInCreator.shared.getCreatorOptionsScreen(
          delegate: self) ?? UIViewController(),
                animated: true)
    
    
    How to call ?
                              
    // Baked Launch method to launch creator module from option screen from where user can decide whetear he can go for Image or Video
    // Controller can be open from any button or bottom bar or load screen or any user interaction option
    
    @IBAction func callToLaunchedBackedCameraOptionMethod(_ sender: Any) {
            self.navigationController?.pushViewController(
                GluedInCreator.shared.getCreatorOptionsScreen(
                    delegate: self) ?? UIViewController(),
                animated: true)
    }
                              
                            
  • Baked Creator Posting controller launch on Button click:
    SDK class: GluedinCreator
    methods: callToLaunchedBackedContentPostingMethod
    Convenient to load baked creator posting screen module.
      
    self.navigationController?.pushViewController(
         GluedInCreator.shared.getContentPostScreen(
              context: "context value",
              delegate: self) ?? UIViewController(),
         animated: true)
        
    
    How to call ?
                              
    // Baked Launch method to launch creator module from option screen from where user can decide whetear he can go for Image or Video
    
    // Controller can be open from any button or bottom bar or load screen or any user interction option
    
     
    @IBAction func callToLaunchedBackedContentPostingMethod(_ sender: Any) {
            self.navigationController?.pushViewController(
                GluedInCreator.shared.getContentPostScreen(
                    context: "context value",
                    delegate: self) ?? UIViewController(),
                animated: true)
     }
     
    
    
  • How to post created content on ‘Other Social Media Apps’:
    Baked creator tool gives flexibility to users to choose whether he/she wants to post the created content on other social media platforms i.e Facebook & Instagram. Please follow the steps below to enable the feature:
    • Create the app on Facebook's official website and get the application id.
    • Now paste the application id into facebook_app_id tag into info.plist file.
      
      
            CFBundleTypeRole
            Editor
            CFBundleURLName
            Facebook SignIn
            CFBundleURLSchemes
            
              fb${FacebookAppID}
            
          
      
      
      Note: Add your created Facebook app id in place of empty value
    • If you don’t want to use the Facebook & Instagram feature, keep the key value the empty.