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.
-
Sample API call
On the Sign-in button click calls the user sign-in Method as shown below.
*
Make Auth class object at class variable level
var auth: Auth? = nil
*/
auth?.userSignIn(
email: txtEmail.text ?? "",
password: txtPassword.text ?? "",
firebaseToken: "",
deviceId: getDeviceUUID(),
deviceType: getDevicePlatForm(),
success: { [weak self] result in
guard let weakSelf = self else { return }
UserDefaults.standard.set(true, forKey: "isLogin")
// Action for sign in success
}, failure: { [weak self] error in
guard let weakSelf = self else { return }
// Action for Fail
})