- added ads
This commit is contained in:
5
Podfile
5
Podfile
@@ -8,7 +8,7 @@ target 'WOKA' do
|
||||
pod 'IQKeyboardManagerSwift', '~> 7.0.2'
|
||||
|
||||
# GIF Animations
|
||||
pod 'lottie-ios', '~> 4.4.1'
|
||||
# pod 'lottie-ios', '~> 4.4.3'
|
||||
|
||||
#Network call
|
||||
pod 'Alamofire' , '~> 5.9.1'
|
||||
@@ -16,6 +16,9 @@ target 'WOKA' do
|
||||
# Image Loading & Caching
|
||||
pod 'SDWebImage' , '~> 5.19.4'
|
||||
|
||||
# Google Ads
|
||||
pod 'Google-Mobile-Ads-SDK'
|
||||
|
||||
#JwPlayer
|
||||
# pod 'JWPlayerKit'
|
||||
|
||||
|
||||
@@ -252,7 +252,6 @@
|
||||
52DAC6482C21762900E2F85B /* WebSeries.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 52DAC6472C21762900E2F85B /* WebSeries.storyboard */; };
|
||||
52DAC64E2C21775300E2F85B /* WebSeriesVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52DAC64D2C21775300E2F85B /* WebSeriesVC.swift */; };
|
||||
52E214C72C2AD47F00BC2D29 /* EpisodeDetailsVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52E214C62C2AD47F00BC2D29 /* EpisodeDetailsVC.swift */; };
|
||||
52E5B3442C859104000291E0 /* WOKA.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = 52E5B3422C859104000291E0 /* WOKA.xcdatamodeld */; };
|
||||
52F4E8662C3D123B00778FBC /* JWKaraokePlayerVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52F4E8652C3D123B00778FBC /* JWKaraokePlayerVC.swift */; };
|
||||
52FB2D8F2BDF898F0009B0C7 /* TextFieldPadding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52FB2D8E2BDF898F0009B0C7 /* TextFieldPadding.swift */; };
|
||||
52FDBA782BFF23F4009D7AC7 /* TimePeriod.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52FDBA772BFF23F4009D7AC7 /* TimePeriod.swift */; };
|
||||
@@ -317,9 +316,6 @@
|
||||
9C834EDC2C1C26CD00B29A9C /* HtmlText.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C834EDB2C1C26CD00B29A9C /* HtmlText.swift */; };
|
||||
9C8446872C40FC6E003E3E53 /* AVPlayerTesting.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C8446862C40FC6E003E3E53 /* AVPlayerTesting.swift */; };
|
||||
9C85A9EC2C5CD5CD0031C365 /* MyListDataTemp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C85A9EB2C5CD5CD0031C365 /* MyListDataTemp.swift */; };
|
||||
9C85A9EF2C5CE1060031C365 /* FirebaseAnalytics in Frameworks */ = {isa = PBXBuildFile; productRef = 9C85A9EE2C5CE1060031C365 /* FirebaseAnalytics */; };
|
||||
9C85A9F12C5CE1060031C365 /* FirebaseCrashlytics in Frameworks */ = {isa = PBXBuildFile; productRef = 9C85A9F02C5CE1060031C365 /* FirebaseCrashlytics */; };
|
||||
9C85A9F32C5CE1060031C365 /* FirebasePerformance in Frameworks */ = {isa = PBXBuildFile; productRef = 9C85A9F22C5CE1060031C365 /* FirebasePerformance */; };
|
||||
9C8C4FAE2C1315410017DD3B /* WebViewVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C8C4FAD2C1315410017DD3B /* WebViewVC.swift */; };
|
||||
9C8C4FB02C1328060017DD3B /* Disclaimer.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 9C8C4FAF2C1328060017DD3B /* Disclaimer.rtf */; };
|
||||
9C9BE46E2C663B1600C48D6A /* JWKaraokePlayerVM.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9C9BE46D2C663B1600C48D6A /* JWKaraokePlayerVM.swift */; };
|
||||
@@ -332,6 +328,10 @@
|
||||
9CB3D08F2C37D0D60062869D /* KaraokeListingDM.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CB3D08E2C37D0D60062869D /* KaraokeListingDM.swift */; };
|
||||
9CB3D0912C37D6930062869D /* KaraokeDetailsVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CB3D0902C37D6930062869D /* KaraokeDetailsVC.swift */; };
|
||||
9CB4C5A92C118EF300737C00 /* NavBarColor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CB4C5A82C118EF300737C00 /* NavBarColor.swift */; };
|
||||
9CBA53092C8996F50046735C /* WOKA.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = 9CBA53072C8996F50046735C /* WOKA.xcdatamodeld */; };
|
||||
9CBA530C2C89A2680046735C /* FirebaseAnalytics in Frameworks */ = {isa = PBXBuildFile; productRef = 9CBA530B2C89A2680046735C /* FirebaseAnalytics */; };
|
||||
9CBA530E2C89A2680046735C /* FirebaseCrashlytics in Frameworks */ = {isa = PBXBuildFile; productRef = 9CBA530D2C89A2680046735C /* FirebaseCrashlytics */; };
|
||||
9CBA53102C89A2680046735C /* FirebasePerformance in Frameworks */ = {isa = PBXBuildFile; productRef = 9CBA530F2C89A2680046735C /* FirebasePerformance */; };
|
||||
9CBCB29B2BE4D614007D7934 /* LoginVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CBCB29A2BE4D614007D7934 /* LoginVC.swift */; };
|
||||
9CBCB29D2BE4D6BB007D7934 /* LoginVM.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CBCB29C2BE4D6BB007D7934 /* LoginVM.swift */; };
|
||||
9CBCB29F2BE4E13A007D7934 /* ValidatorClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CBCB29E2BE4E13A007D7934 /* ValidatorClass.swift */; };
|
||||
@@ -360,6 +360,7 @@
|
||||
9CDAEB142C54132E00890C47 /* CheckEddDM.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CDAEB132C54132E00890C47 /* CheckEddDM.swift */; };
|
||||
9CDC343C2BDBBC6B00093089 /* SelectAgeVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CDC343B2BDBBC6B00093089 /* SelectAgeVC.swift */; };
|
||||
9CDCE1452BDB9B9A003FEF11 /* OnBoardMainSound.m4a in Resources */ = {isa = PBXBuildFile; fileRef = 9CDCE1442BDB9B9A003FEF11 /* OnBoardMainSound.m4a */; };
|
||||
9CF6980B2C89A324006007EF /* Lottie in Frameworks */ = {isa = PBXBuildFile; productRef = 9CF6980A2C89A324006007EF /* Lottie */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXContainerItemProxy section */
|
||||
@@ -654,7 +655,6 @@
|
||||
52DAC6472C21762900E2F85B /* WebSeries.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = WebSeries.storyboard; sourceTree = "<group>"; };
|
||||
52DAC64D2C21775300E2F85B /* WebSeriesVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebSeriesVC.swift; sourceTree = "<group>"; };
|
||||
52E214C62C2AD47F00BC2D29 /* EpisodeDetailsVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EpisodeDetailsVC.swift; sourceTree = "<group>"; };
|
||||
52E5B3432C859104000291E0 /* WOKA.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = WOKA.xcdatamodel; sourceTree = "<group>"; };
|
||||
52E7E0F62BDF7DD500C86E10 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/AuthenticationSB.strings; sourceTree = "<group>"; };
|
||||
52E7E0F82BDF7DD900C86E10 /* hi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = hi; path = hi.lproj/AuthenticationSB.strings; sourceTree = "<group>"; };
|
||||
52F477A42C492ED900F79200 /* JWPlayerKit.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = JWPlayerKit.xcframework; path = Pods/JWPlayerKit/JWPlayerKit.xcframework; sourceTree = "<group>"; };
|
||||
@@ -723,6 +723,7 @@
|
||||
9CB3D08E2C37D0D60062869D /* KaraokeListingDM.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KaraokeListingDM.swift; sourceTree = "<group>"; };
|
||||
9CB3D0902C37D6930062869D /* KaraokeDetailsVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KaraokeDetailsVC.swift; sourceTree = "<group>"; };
|
||||
9CB4C5A82C118EF300737C00 /* NavBarColor.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NavBarColor.swift; sourceTree = "<group>"; };
|
||||
9CBA53082C8996F50046735C /* WOKA.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = WOKA.xcdatamodel; sourceTree = "<group>"; };
|
||||
9CBCB29A2BE4D614007D7934 /* LoginVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginVC.swift; sourceTree = "<group>"; };
|
||||
9CBCB29C2BE4D6BB007D7934 /* LoginVM.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginVM.swift; sourceTree = "<group>"; };
|
||||
9CBCB29E2BE4E13A007D7934 /* ValidatorClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ValidatorClass.swift; sourceTree = "<group>"; };
|
||||
@@ -764,11 +765,12 @@
|
||||
files = (
|
||||
4469E533EC95AC428FE50FB2 /* Pods_WOKA.framework in Frameworks */,
|
||||
52C83E3F2C493FD700F27563 /* RSKPlaceholderTextView in Frameworks */,
|
||||
9CF6980B2C89A324006007EF /* Lottie in Frameworks */,
|
||||
9CBA530C2C89A2680046735C /* FirebaseAnalytics in Frameworks */,
|
||||
9CBA530E2C89A2680046735C /* FirebaseCrashlytics in Frameworks */,
|
||||
528F26F02C6B7BD1003E4D99 /* OneSignalFramework in Frameworks */,
|
||||
9C85A9F32C5CE1060031C365 /* FirebasePerformance in Frameworks */,
|
||||
9C85A9F12C5CE1060031C365 /* FirebaseCrashlytics in Frameworks */,
|
||||
9C85A9EF2C5CE1060031C365 /* FirebaseAnalytics in Frameworks */,
|
||||
528F26F22C6B7BD1003E4D99 /* OneSignalInAppMessages in Frameworks */,
|
||||
9CBA53102C89A2680046735C /* FirebasePerformance in Frameworks */,
|
||||
521CB1002C493DB80085BDF8 /* JWPlayerKit in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
@@ -962,7 +964,7 @@
|
||||
9C535DC82C00C34000DA6DCD /* Theme */,
|
||||
52DAC6462C21761700E2F85B /* WebSeries */,
|
||||
9C834ED92C1C20EC00B29A9C /* WOKA.entitlements */,
|
||||
52E5B3422C859104000291E0 /* WOKA.xcdatamodeld */,
|
||||
9CBA53072C8996F50046735C /* WOKA.xcdatamodeld */,
|
||||
52ACC1292C610EC900791528 /* PersistentStorage.swift */,
|
||||
);
|
||||
path = WOKA;
|
||||
@@ -2012,6 +2014,7 @@
|
||||
523ED2582BDA2BC700CFED02 /* Resources */,
|
||||
90182DDCD7EAE5F6DA5B4DFB /* [CP] Embed Pods Frameworks */,
|
||||
528F26E72C6B7B30003E4D99 /* Embed Foundation Extensions */,
|
||||
7E437097FFA5CD78E3590A44 /* [CP] Copy Pods Resources */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
@@ -2022,11 +2025,12 @@
|
||||
packageProductDependencies = (
|
||||
521CB0FF2C493DB80085BDF8 /* JWPlayerKit */,
|
||||
52C83E3E2C493FD700F27563 /* RSKPlaceholderTextView */,
|
||||
9C85A9EE2C5CE1060031C365 /* FirebaseAnalytics */,
|
||||
9C85A9F02C5CE1060031C365 /* FirebaseCrashlytics */,
|
||||
9C85A9F22C5CE1060031C365 /* FirebasePerformance */,
|
||||
528F26EF2C6B7BD1003E4D99 /* OneSignalFramework */,
|
||||
528F26F12C6B7BD1003E4D99 /* OneSignalInAppMessages */,
|
||||
9CBA530B2C89A2680046735C /* FirebaseAnalytics */,
|
||||
9CBA530D2C89A2680046735C /* FirebaseCrashlytics */,
|
||||
9CBA530F2C89A2680046735C /* FirebasePerformance */,
|
||||
9CF6980A2C89A324006007EF /* Lottie */,
|
||||
);
|
||||
productName = WOKA;
|
||||
productReference = 523ED25A2BDA2BC700CFED02 /* WOKA.app */;
|
||||
@@ -2127,8 +2131,9 @@
|
||||
packageReferences = (
|
||||
521CB0FE2C493DB80085BDF8 /* XCRemoteSwiftPackageReference "JWPlayerKit-package" */,
|
||||
52C83E3D2C493FD700F27563 /* XCRemoteSwiftPackageReference "RSKPlaceholderTextView" */,
|
||||
9C85A9ED2C5CE1060031C365 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */,
|
||||
528F26EC2C6B7BD1003E4D99 /* XCRemoteSwiftPackageReference "OneSignal-XCFramework" */,
|
||||
9CBA530A2C89A2680046735C /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */,
|
||||
9CF698092C89A324006007EF /* XCRemoteSwiftPackageReference "lottie-spm" */,
|
||||
);
|
||||
productRefGroup = 523ED25B2BDA2BC700CFED02 /* Products */;
|
||||
projectDirPath = "";
|
||||
@@ -2240,6 +2245,23 @@
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXShellScriptBuildPhase section */
|
||||
7E437097FFA5CD78E3590A44 /* [CP] Copy Pods Resources */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-WOKA/Pods-WOKA-resources-${CONFIGURATION}-input-files.xcfilelist",
|
||||
);
|
||||
name = "[CP] Copy Pods Resources";
|
||||
outputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-WOKA/Pods-WOKA-resources-${CONFIGURATION}-output-files.xcfilelist",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-WOKA/Pods-WOKA-resources.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
85374DA1EC2E3F7D8F24983D /* [CP] Check Pods Manifest.lock */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
@@ -2439,6 +2461,7 @@
|
||||
525954292BEA079500191286 /* UserEmailVerifyDM.swift in Sources */,
|
||||
52ACC1352C64C89900791528 /* MyOrderDetailsVC.swift in Sources */,
|
||||
522D655E2C1ACCF40021E505 /* UserNotificationDM.swift in Sources */,
|
||||
9CBA53092C8996F50046735C /* WOKA.xcdatamodeld in Sources */,
|
||||
52ACC13A2C64CD0100791528 /* MyOrderDetailsCell.swift in Sources */,
|
||||
9C1C69FC2C106C240035B2C7 /* ContactSupportVM.swift in Sources */,
|
||||
52AF71F22C36B77B00BC5972 /* GamesDetailVC.swift in Sources */,
|
||||
@@ -2458,7 +2481,6 @@
|
||||
9CBE1B432C0F37B300CA6E61 /* DropDown.swift in Sources */,
|
||||
52A6DC9C2C4E38E000F63C51 /* ShopListingVC.swift in Sources */,
|
||||
52C8B0742BDA7626003B51D0 /* OnBoardVC.swift in Sources */,
|
||||
52E5B3442C859104000291E0 /* WOKA.xcdatamodeld in Sources */,
|
||||
5219C2C22C086D9C00A1DF4D /* DataTypeConversion.swift in Sources */,
|
||||
525953CF2BE8B28F00191286 /* Utilities.swift in Sources */,
|
||||
52BFB5332C33DAD700BAAE15 /* AudioBookHomeVC.swift in Sources */,
|
||||
@@ -2790,7 +2812,7 @@
|
||||
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
||||
CODE_SIGN_ENTITLEMENTS = WOKA/WOKA.entitlements;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 3;
|
||||
CURRENT_PROJECT_VERSION = Added;
|
||||
DEVELOPMENT_TEAM = 4S9A74ZB6H;
|
||||
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
@@ -2830,7 +2852,7 @@
|
||||
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
||||
CODE_SIGN_ENTITLEMENTS = WOKA/WOKA.entitlements;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 3;
|
||||
CURRENT_PROJECT_VERSION = Added;
|
||||
DEVELOPMENT_TEAM = 4S9A74ZB6H;
|
||||
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
@@ -3068,12 +3090,20 @@
|
||||
minimumVersion = 8.0.0;
|
||||
};
|
||||
};
|
||||
9C85A9ED2C5CE1060031C365 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */ = {
|
||||
9CBA530A2C89A2680046735C /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */ = {
|
||||
isa = XCRemoteSwiftPackageReference;
|
||||
repositoryURL = "https://github.com/firebase/firebase-ios-sdk.git";
|
||||
requirement = {
|
||||
kind = upToNextMajorVersion;
|
||||
minimumVersion = 11.0.0;
|
||||
minimumVersion = 11.1.0;
|
||||
};
|
||||
};
|
||||
9CF698092C89A324006007EF /* XCRemoteSwiftPackageReference "lottie-spm" */ = {
|
||||
isa = XCRemoteSwiftPackageReference;
|
||||
repositoryURL = "https://github.com/airbnb/lottie-spm.git";
|
||||
requirement = {
|
||||
kind = upToNextMajorVersion;
|
||||
minimumVersion = 4.5.0;
|
||||
};
|
||||
};
|
||||
/* End XCRemoteSwiftPackageReference section */
|
||||
@@ -3104,32 +3134,37 @@
|
||||
package = 52C83E3D2C493FD700F27563 /* XCRemoteSwiftPackageReference "RSKPlaceholderTextView" */;
|
||||
productName = RSKPlaceholderTextView;
|
||||
};
|
||||
9C85A9EE2C5CE1060031C365 /* FirebaseAnalytics */ = {
|
||||
9CBA530B2C89A2680046735C /* FirebaseAnalytics */ = {
|
||||
isa = XCSwiftPackageProductDependency;
|
||||
package = 9C85A9ED2C5CE1060031C365 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
|
||||
package = 9CBA530A2C89A2680046735C /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
|
||||
productName = FirebaseAnalytics;
|
||||
};
|
||||
9C85A9F02C5CE1060031C365 /* FirebaseCrashlytics */ = {
|
||||
9CBA530D2C89A2680046735C /* FirebaseCrashlytics */ = {
|
||||
isa = XCSwiftPackageProductDependency;
|
||||
package = 9C85A9ED2C5CE1060031C365 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
|
||||
package = 9CBA530A2C89A2680046735C /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
|
||||
productName = FirebaseCrashlytics;
|
||||
};
|
||||
9C85A9F22C5CE1060031C365 /* FirebasePerformance */ = {
|
||||
9CBA530F2C89A2680046735C /* FirebasePerformance */ = {
|
||||
isa = XCSwiftPackageProductDependency;
|
||||
package = 9C85A9ED2C5CE1060031C365 /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
|
||||
package = 9CBA530A2C89A2680046735C /* XCRemoteSwiftPackageReference "firebase-ios-sdk" */;
|
||||
productName = FirebasePerformance;
|
||||
};
|
||||
9CF6980A2C89A324006007EF /* Lottie */ = {
|
||||
isa = XCSwiftPackageProductDependency;
|
||||
package = 9CF698092C89A324006007EF /* XCRemoteSwiftPackageReference "lottie-spm" */;
|
||||
productName = Lottie;
|
||||
};
|
||||
/* End XCSwiftPackageProductDependency section */
|
||||
|
||||
/* Begin XCVersionGroup section */
|
||||
52E5B3422C859104000291E0 /* WOKA.xcdatamodeld */ = {
|
||||
9CBA53072C8996F50046735C /* WOKA.xcdatamodeld */ = {
|
||||
isa = XCVersionGroup;
|
||||
children = (
|
||||
52E5B3432C859104000291E0 /* WOKA.xcdatamodel */,
|
||||
9CBA53082C8996F50046735C /* WOKA.xcdatamodel */,
|
||||
);
|
||||
currentVersion = 52E5B3432C859104000291E0 /* WOKA.xcdatamodel */;
|
||||
currentVersion = 9CBA53082C8996F50046735C /* WOKA.xcdatamodel */;
|
||||
name = WOKA.xcdatamodeld;
|
||||
path = /Users/macbookpro/Desktop/WOKA/WOKA/WOKA.xcdatamodeld;
|
||||
path = /Users/bilal/Desktop/woka_native_ios_swift/WOKA/WOKA.xcdatamodeld;
|
||||
sourceTree = "<group>";
|
||||
versionGroupType = wrapper.xcdatamodel;
|
||||
};
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
//
|
||||
|
||||
import UIKit
|
||||
import GoogleMobileAds
|
||||
|
||||
class GamesListVC: UIViewController {
|
||||
|
||||
@@ -25,6 +26,9 @@ class GamesListVC: UIViewController {
|
||||
|
||||
var vm = GamesListVM()
|
||||
|
||||
private var interstitial: GADInterstitialAd?
|
||||
private var rewardedAd: GADRewardedAd?
|
||||
|
||||
override func viewDidLoad() {
|
||||
super.viewDidLoad()
|
||||
vm.vc = self
|
||||
@@ -33,6 +37,22 @@ class GamesListVC: UIViewController {
|
||||
self.title = "GAMES".localized(loc: AuthFunc.shareInstance.languageSelected.rawValue)
|
||||
navigationController?.navigationBar.setBackgroundImage(UIImage(), for: .default)
|
||||
navigationController?.navigationBar.shadowImage = UIImage()
|
||||
|
||||
Task {
|
||||
do {
|
||||
interstitial = try await GADInterstitialAd.load(
|
||||
withAdUnitID: "ca-app-pub-3940256099942544/4411468910", request: GADRequest())
|
||||
interstitial?.fullScreenContentDelegate = self
|
||||
|
||||
rewardedAd = try await GADRewardedAd.load(
|
||||
withAdUnitID: "ca-app-pub-3940256099942544/1712485313", request: GADRequest())
|
||||
rewardedAd?.fullScreenContentDelegate = self
|
||||
|
||||
|
||||
} catch {
|
||||
print("Failed to load interstitial ad with error: \(error.localizedDescription)")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override func viewWillAppear(_ animated: Bool) {
|
||||
@@ -150,9 +170,35 @@ extension GamesListVC : TableViewSRC{
|
||||
vm.setHeaderData()
|
||||
|
||||
let data = vm.gameData[indexPath.row]
|
||||
|
||||
if let postID = data.id{
|
||||
PersistentStorage.shared.addGamesCount(postID: postID)
|
||||
}
|
||||
|
||||
/*
|
||||
This is only for test
|
||||
*/
|
||||
if data.title == "WOKA Ludo"{
|
||||
// guard let interstitial = interstitial else {
|
||||
// return print("Ad wasn't ready.")
|
||||
// }
|
||||
//
|
||||
// // The UIViewController parameter is an optional.
|
||||
// interstitial.present(fromRootViewController: nil)
|
||||
guard let rewardedAd = rewardedAd else {
|
||||
return print("Ad wasn't ready.")
|
||||
}
|
||||
|
||||
// The UIViewController parameter is an optional.
|
||||
rewardedAd.present(fromRootViewController: nil) {
|
||||
let reward = rewardedAd.adReward
|
||||
print("Reward received with currency \(reward.amount), amount \(reward.amount.doubleValue)")
|
||||
// TODO: Reward the user.
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
let sb = UIStoryboard(name: K.StoryBoard.Games, bundle: nil)
|
||||
let vcPush = sb.instantiateViewController(withIdentifier: K.StoryBoardID.Games.gamesDetailVC) as! GamesDetailVC
|
||||
vcPush.modalPresentationStyle = .overCurrentContext
|
||||
@@ -225,3 +271,45 @@ extension GamesListVC: UIScrollViewDelegate {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
extension GamesListVC : GADFullScreenContentDelegate{
|
||||
/// Tells the delegate that the ad failed to present full screen content.
|
||||
func ad(_ ad: GADFullScreenPresentingAd, didFailToPresentFullScreenContentWithError error: Error) {
|
||||
print("Ad did fail to present full screen content.")
|
||||
}
|
||||
|
||||
/// Tells the delegate that the ad will present full screen content.
|
||||
func adWillPresentFullScreenContent(_ ad: GADFullScreenPresentingAd) {
|
||||
print("Ad will present full screen content.")
|
||||
}
|
||||
|
||||
/// Tells the delegate that the ad dismissed full screen content.
|
||||
func adDidDismissFullScreenContent(_ ad: GADFullScreenPresentingAd) {
|
||||
print("Ad did dismiss full screen content.")
|
||||
let data = vm.gameData.first
|
||||
|
||||
let sb = UIStoryboard(name: K.StoryBoard.Games, bundle: nil)
|
||||
let vcPush = sb.instantiateViewController(withIdentifier: K.StoryBoardID.Games.gamesDetailVC) as! GamesDetailVC
|
||||
vcPush.modalPresentationStyle = .overCurrentContext
|
||||
vcPush.modalTransitionStyle = .crossDissolve
|
||||
vcPush.gameIndex = 0
|
||||
vcPush.gameData = data
|
||||
vcPush.delegate = self
|
||||
self.present(vcPush, animated: true)
|
||||
|
||||
Task {
|
||||
do {
|
||||
interstitial = try await GADInterstitialAd.load(
|
||||
withAdUnitID: "ca-app-pub-3940256099942544/4411468910", request: GADRequest())
|
||||
interstitial?.fullScreenContentDelegate = self
|
||||
|
||||
rewardedAd = try await GADRewardedAd.load(
|
||||
withAdUnitID: "ca-app-pub-3940256099942544/1712485313", request: GADRequest())
|
||||
rewardedAd?.fullScreenContentDelegate = self
|
||||
} catch {
|
||||
print("Failed to load interstitial ad with error: \(error.localizedDescription)")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>GADApplicationIdentifier</key>
|
||||
<string>ca-app-pub-5699008063638916~6654980943</string>
|
||||
<key>API_KEY_ID</key>
|
||||
<string>$(API_KEY_ID)</string>
|
||||
<key>API_KEY_PASS</key>
|
||||
|
||||
@@ -10,6 +10,7 @@ import Lottie
|
||||
import IQKeyboardManagerSwift
|
||||
import JWPlayerKit
|
||||
import Firebase
|
||||
import GoogleMobileAds
|
||||
import OneSignalFramework
|
||||
|
||||
let appDelegate = UIApplication.shared.delegate as! AppDelegate
|
||||
@@ -32,10 +33,12 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
|
||||
}
|
||||
|
||||
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
|
||||
//
|
||||
//Initialize Firebase
|
||||
FirebaseApp.configure()
|
||||
|
||||
// Initialize the Google Mobile Ads SDK.
|
||||
GADMobileAds.sharedInstance().start(completionHandler: nil)
|
||||
|
||||
// enabling the IQKeyboard manager instance
|
||||
IQKeyboardManager.shared.enable = true
|
||||
IQKeyboardManager.shared.resignOnTouchOutside = true
|
||||
|
||||
@@ -14,7 +14,7 @@ class NetworkManager{
|
||||
|
||||
private init() {}
|
||||
|
||||
enum APIError: Error {
|
||||
enum APIError: Error, LocalizedError {
|
||||
case networkError
|
||||
case noNetwork(message:String)
|
||||
case invalidURL
|
||||
@@ -22,6 +22,25 @@ class NetworkManager{
|
||||
case responseValidationFailed
|
||||
case unknown(message: String)
|
||||
case custom(message: String)
|
||||
|
||||
var errorDescription: String? {
|
||||
switch self {
|
||||
case .networkError:
|
||||
return "A network error occurred."
|
||||
case .noNetwork(let message):
|
||||
return "No network: \(message)"
|
||||
case .invalidURL:
|
||||
return "The URL provided is invalid."
|
||||
case .parameterEncodingFailed:
|
||||
return "Failed to encode the parameters."
|
||||
case .responseValidationFailed:
|
||||
return "Response validation failed."
|
||||
case .unknown(let message):
|
||||
return "Unknown error: \(message)"
|
||||
case .custom(let message):
|
||||
return "Custom error: \(message)"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// This function will do the network call for HTTPMethod & Encoding is URLEncoding with contentType ["application/json"]
|
||||
|
||||
@@ -108,27 +108,36 @@ extension ShopListingVC : TableViewSRC{
|
||||
|
||||
if vm.superCatData.count == 0 {return}
|
||||
|
||||
if let adsData = AuthFunc.shareInstance.adsData, (adsData.result?.filter({$0.forPage == AdsEnum.shop_super_category.rawValue}).first) != nil{
|
||||
// check if ads data contains ad for webseries
|
||||
let superCatID = vm.superCatData[indexPath.row - 1].id
|
||||
if let superCatID{
|
||||
PersistentStorage.shared.addShopCount(postID: superCatID)
|
||||
}
|
||||
let sb = UIStoryboard(name: K.StoryBoard.shop, bundle: nil)
|
||||
let vcPush = sb.instantiateViewController(withIdentifier: K.StoryBoardID.Shop.shopCategoryVC) as! ShopCategoryVC
|
||||
vcPush.vm.superCatID = superCatID
|
||||
self.navigationController?.pushViewController(vcPush, animated: true)
|
||||
return
|
||||
}else{
|
||||
let superCatID = vm.superCatData[indexPath.row].id
|
||||
if let superCatID{
|
||||
PersistentStorage.shared.addShopCount(postID: superCatID)
|
||||
}
|
||||
let sb = UIStoryboard(name: K.StoryBoard.shop, bundle: nil)
|
||||
let vcPush = sb.instantiateViewController(withIdentifier: K.StoryBoardID.Shop.shopCategoryVC) as! ShopCategoryVC
|
||||
vcPush.vm.superCatID = superCatID
|
||||
self.navigationController?.pushViewController(vcPush, animated: true)
|
||||
let superCatID = vm.superCatData[indexPath.row].id
|
||||
if let superCatID{
|
||||
PersistentStorage.shared.addShopCount(postID: superCatID)
|
||||
}
|
||||
let sb = UIStoryboard(name: K.StoryBoard.shop, bundle: nil)
|
||||
let vcPush = sb.instantiateViewController(withIdentifier: K.StoryBoardID.Shop.shopCategoryVC) as! ShopCategoryVC
|
||||
vcPush.vm.superCatID = superCatID
|
||||
self.navigationController?.pushViewController(vcPush, animated: true)
|
||||
|
||||
// if let adsData = AuthFunc.shareInstance.adsData, (adsData.result?.filter({$0.forPage == AdsEnum.shop_super_category.rawValue}).first) != nil{
|
||||
// // check if ads data contains ad for webseries
|
||||
// let superCatID = vm.superCatData[indexPath.row - 1].id
|
||||
// if let superCatID{
|
||||
// PersistentStorage.shared.addShopCount(postID: superCatID)
|
||||
// }
|
||||
// let sb = UIStoryboard(name: K.StoryBoard.shop, bundle: nil)
|
||||
// let vcPush = sb.instantiateViewController(withIdentifier: K.StoryBoardID.Shop.shopCategoryVC) as! ShopCategoryVC
|
||||
// vcPush.vm.superCatID = superCatID
|
||||
// self.navigationController?.pushViewController(vcPush, animated: true)
|
||||
// return
|
||||
// }else{
|
||||
// let superCatID = vm.superCatData[indexPath.row].id
|
||||
// if let superCatID{
|
||||
// PersistentStorage.shared.addShopCount(postID: superCatID)
|
||||
// }
|
||||
// let sb = UIStoryboard(name: K.StoryBoard.shop, bundle: nil)
|
||||
// let vcPush = sb.instantiateViewController(withIdentifier: K.StoryBoardID.Shop.shopCategoryVC) as! ShopCategoryVC
|
||||
// vcPush.vm.superCatID = superCatID
|
||||
// self.navigationController?.pushViewController(vcPush, animated: true)
|
||||
// }
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -961,7 +961,7 @@
|
||||
<rect key="frame" x="0.0" y="348" width="414" height="514"/>
|
||||
<subviews>
|
||||
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="1iA-oh-toI">
|
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="448"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="578"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" text="Explore WOKA" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="cla-Q5-K2m" customClass="LocalisedElementsLabel" customModule="WOKA" customModuleProvider="target">
|
||||
<rect key="frame" x="10" y="10" width="394" height="24"/>
|
||||
@@ -983,8 +983,20 @@
|
||||
</collectionViewFlowLayout>
|
||||
<cells/>
|
||||
</collectionView>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Qyf-6K-qmR" customClass="GADBannerView">
|
||||
<rect key="frame" x="10" y="194" width="394" height="120"/>
|
||||
<color key="backgroundColor" systemColor="systemBackgroundColor"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="120" id="N13-hk-WFw"/>
|
||||
</constraints>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
|
||||
<integer key="value" value="5"/>
|
||||
</userDefinedRuntimeAttribute>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</view>
|
||||
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="10" translatesAutoresizingMaskIntoConstraints="NO" id="02e-rk-u9Q">
|
||||
<rect key="frame" x="10" y="194" width="394" height="224"/>
|
||||
<rect key="frame" x="10" y="324" width="394" height="224"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" text="Coming Soon on WOKA" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="vdt-pC-uNJ" customClass="LocalisedElementsLabel" customModule="WOKA" customModuleProvider="target">
|
||||
<rect key="frame" x="10" y="10" width="374" height="24"/>
|
||||
@@ -1058,7 +1070,7 @@
|
||||
<edgeInsets key="layoutMargins" top="10" left="10" bottom="0.0" right="10"/>
|
||||
</stackView>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="K3K-3D-e9X">
|
||||
<rect key="frame" x="10" y="428" width="394" height="20"/>
|
||||
<rect key="frame" x="10" y="558" width="394" height="20"/>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="20" id="Etm-uk-Fs9"/>
|
||||
@@ -1109,6 +1121,7 @@
|
||||
<outlet property="liveTvView" destination="Ksi-1c-xBG" id="xcg-na-dB1"/>
|
||||
<outlet property="nameLabel" destination="Qn2-Bb-Ud6" id="t3V-Kr-Tkh"/>
|
||||
<outlet property="notificationBtn" destination="tl8-VA-AjQ" id="p7t-q6-5US"/>
|
||||
<outlet property="testAdView" destination="Qyf-6K-qmR" id="rRh-Pk-nGq"/>
|
||||
</connections>
|
||||
</viewController>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="AKa-H1-a6U" userLabel="First Responder" customClass="UIResponder" sceneMemberID="firstResponder"/>
|
||||
@@ -1413,7 +1426,7 @@
|
||||
<color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
||||
</systemColor>
|
||||
<systemColor name="systemBrownColor">
|
||||
<color red="0.63529411764705879" green="0.51764705882352946" blue="0.36862745098039218" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<color red="0.63529411759999999" green="0.51764705879999995" blue="0.36862745099999999" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
</systemColor>
|
||||
</resources>
|
||||
</document>
|
||||
|
||||
@@ -8,8 +8,9 @@
|
||||
import UIKit
|
||||
import AVFAudio
|
||||
import AVFoundation
|
||||
import GoogleMobileAds
|
||||
|
||||
class ThemeTwoVC: UIViewController {
|
||||
class ThemeTwoVC: UIViewController{
|
||||
|
||||
weak var delegate: ChildViewControllerDelegate?
|
||||
@IBOutlet weak var collectionView: UICollectionView!
|
||||
@@ -19,9 +20,11 @@ class ThemeTwoVC: UIViewController {
|
||||
@IBOutlet weak var notificationBtn: UIButton!
|
||||
|
||||
@IBOutlet weak var liveTVActivityIndicator: UIActivityIndicatorView!
|
||||
@IBOutlet weak var testAdView: GADBannerView!
|
||||
|
||||
var vm = ThemeTwoVM()
|
||||
|
||||
|
||||
deinit{
|
||||
NotificationCenter.default.removeObserver(self, name: NSNotification.Name(rawValue: K.NotificationCenterReloads.reloadTheme), object: nil)
|
||||
NotificationCenter.default.removeObserver(self, name: NSNotification.Name(rawValue: K.NotificationCenterReloads.themeTwoPush), object: nil)
|
||||
@@ -53,6 +56,15 @@ class ThemeTwoVC: UIViewController {
|
||||
if MyListDataTemp.shareInstance.favListingData?.showData == nil {
|
||||
MyListDataTemp.shareInstance.favListingData = FavouriteListingDM.ResultData(totalRecords: nil, showData: FavouriteListingDM.ResultData.ShowData(hindi: [],english: []),videoData: [],gameData: [],singKaraokeData: [],audioData: [])
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
This is test ad.
|
||||
*/
|
||||
testAdView.adUnitID = "ca-app-pub-3940256099942544/2934735716"
|
||||
testAdView.rootViewController = self
|
||||
testAdView.load(GADRequest())
|
||||
|
||||
}
|
||||
|
||||
override func viewWillAppear(_ animated: Bool) {
|
||||
@@ -260,3 +272,5 @@ extension ThemeTwoVC : UICollectionViewDelegateFlowLayout{
|
||||
// return UIEdgeInsets(top: 0, left: 5, bottom: 0, right: 5)
|
||||
// }
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ class WebSeriesVM{
|
||||
// Calculate the new view height based on the multiplier
|
||||
// maxHeaderHeight = currentScreenHeight * heightMultiplier
|
||||
|
||||
//Set banner height
|
||||
//Set Header height
|
||||
maxHeaderHeight = UIScreen.main.bounds.width * 0.55
|
||||
vc.headerHeight.constant = maxHeaderHeight
|
||||
|
||||
|
||||
Reference in New Issue
Block a user