demoapp/initial_implementation (#1)

* Initial checkin

* Integrate CocoaPods with AppLovin SDK

* Continued work

* Update Main.storyboard

* Update project.pbxproj

* Update Main.storyboard

* Delete xcschememanagement.plist

* Pod deintegrate

* Delete contents.xcworkspacedata

* Delete IDEWorkspaceChecks.plist

* Update .gitignore

* Programmatically set banner constraints

* Anchor banner to top of screen

* Renamed to AutoLayout Banner *

* FrameLayout and InterfaceBuilder based banner ad files added

* Update Main.storyboard

* Frame Layout banner

* Interface Builder banner WIP

* Update Main.storyboard

Link delegate thru storyboard

* Interface Builder banner ad

* Rename viewcontroller and update storyboard

* Delete contents.xcworkspacedata

* Delete contents.xcworkspacedata

* Delete IDEWorkspaceChecks.plist

* Delete Podfile

* Delete Contents.json

* Delete project.pbxproj

* Delete contents.xcworkspacedata

* Delete IDEWorkspaceChecks.plist

* Delete xcschememanagement.plist

* Delete ALAppDelegate.swift

* Revert "Delete ALAppDelegate.swift"

This reverts commit 23d14ad7321ada22bcb37b39f49ea1238bb80c33.

* Revert "Delete xcschememanagement.plist"

This reverts commit b9d36d2ed0852393ebf5f495fc696cbafec2efee.

* Revert "Delete IDEWorkspaceChecks.plist"

This reverts commit b7486812f3abc59e4484aaf57977d06ba182314c.

* Revert "Delete contents.xcworkspacedata"

This reverts commit 8e5786110de39642b45ee46490e89163ee592f4a.

* Revert "Delete project.pbxproj"

This reverts commit 85107556aa284007f2e238b329a36146556d9def.

* Revert "Delete Contents.json"

This reverts commit 1b7ec9d1974d343485dc1d2f1bf5e215fdb20946.

* Revert "Delete Podfile"

This reverts commit d5ab4a03892d4f1d8d179009d0ac4133e67b5caf.

* Revert "Delete IDEWorkspaceChecks.plist"

This reverts commit 094f4f16bce16b0cd1947aa48c337c4067aa67e4.

* Revert "Delete contents.xcworkspacedata"

This reverts commit be6050a793f1409564e3a75f483deca153ff910a.

* Revert "Delete contents.xcworkspacedata"

This reverts commit 1802a5e706ae0914042b1be6dea9dca4f84cf9a2.

* Delete contents.xcworkspacedata

* Delete IDEWorkspaceChecks.plist

* Adding DemoApp-Swift in .gitignore until swift app is done

* Delete contents.xcworkspacedata

* Delete IDEWorkspaceChecks.plist

* Removing Swift files till complete

* Revert "Adding DemoApp-Swift in .gitignore until swift app is done"

This reverts commit bf1c0b4f170062d8bda663a442a8fab75e1aa00e.

* Remove empty pod directory

* Remove another empty pod dir

* Move addsubview before loadAd
This commit is contained in:
Andrew Tian 2019-09-12 19:26:11 -07:00 коммит произвёл GitHub
Родитель 166170bab0
Коммит 806e0ca5f3
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
23 изменённых файлов: 1464 добавлений и 0 удалений

78
.gitignore поставляемый Normal file
Просмотреть файл

@ -0,0 +1,78 @@
# Xcode
#
# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore
## Build generated
build/
DerivedData/
## Various settings
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
xcuserdata/
xcworkspace/
*.xcworkspacedata
DemoApp-ObjC/DemoApp-ObjC.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
## Other
*.moved-aside
*.xcuserstate
*.xcuserdatad
*.xcbkptlist
*.xcscheme
## Obj-C/Swift specific
*.hmap
*.ipa
*.dSYM.zip
*.dSYM
*.a
# CocoaPods
#
# We recommend against adding the Pods directory to your .gitignore. However
# you should judge for yourself, the pros and cons are mentioned at:
# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control
Pods/
# Carthage
#
# Add this line if you want to avoid checking in source code from Carthage dependencies.
# Carthage/Checkouts
Carthage/Build
# fastlane
#
# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the
# screenshots whenever they are needed.
# For more information about the recommended setup visit:
# https://github.com/fastlane/fastlane/blob/master/fastlane/docs/Gitignore.md
fastlane/report.xml
fastlane/Preview.html
fastlane/screenshots
fastlane/test_output
# Code Injection
#
# After new code Injection tools there's a generated folder /iOSInjectionProject
# https://github.com/johnno1962/injectionforxcode
iOSInjectionProject/
# Idea
.idea
# MacOS
.DS_Store
*.lock

Просмотреть файл

@ -0,0 +1,395 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 51;
objects = {
/* Begin PBXBuildFile section */
1D992FE6231FA1C400C472F8 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 1D992FE4231FA1C400C472F8 /* Main.storyboard */; };
1D992FE8231FA1C500C472F8 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 1D992FE7231FA1C500C472F8 /* Assets.xcassets */; };
1D992FEB231FA1C500C472F8 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 1D992FE9231FA1C500C472F8 /* LaunchScreen.storyboard */; };
37C7E1EB2328904E002165B5 /* ALAutoLayoutBannerAdViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D0CB33523204D120076AAAA /* ALAutoLayoutBannerAdViewController.m */; };
37C7E1EC2328904E002165B5 /* ALFrameLayoutBannerAdViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 37C7E1E823285E94002165B5 /* ALFrameLayoutBannerAdViewController.m */; };
37C7E1ED2328904E002165B5 /* ALInterstitialAdViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D0CB32F23204CE70076AAAA /* ALInterstitialAdViewController.m */; };
37C7E1EE2328904E002165B5 /* ALRewardedAdViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D0CB33223204CF70076AAAA /* ALRewardedAdViewController.m */; };
37C7E1EF2328904E002165B5 /* ALInterfaceBuilderBannerAdViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 37C7E1E523285B4E002165B5 /* ALInterfaceBuilderBannerAdViewController.m */; };
37C7E1F223289286002165B5 /* AppLovinSDK.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 37C7E1F123289286002165B5 /* AppLovinSDK.framework */; };
37C7E1F3232892CF002165B5 /* ALAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D992FDF231FA1C400C472F8 /* ALAppDelegate.m */; };
37C7E1F523297423002165B5 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D992FED231FA1C500C472F8 /* main.m */; };
37C7E1F62329742E002165B5 /* ALHomeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D992FE2231FA1C400C472F8 /* ALHomeViewController.m */; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
1D0CB32E23204CE70076AAAA /* ALInterstitialAdViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ALInterstitialAdViewController.h; sourceTree = "<group>"; };
1D0CB32F23204CE70076AAAA /* ALInterstitialAdViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ALInterstitialAdViewController.m; sourceTree = "<group>"; };
1D0CB33123204CF70076AAAA /* ALRewardedAdViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ALRewardedAdViewController.h; sourceTree = "<group>"; };
1D0CB33223204CF70076AAAA /* ALRewardedAdViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ALRewardedAdViewController.m; sourceTree = "<group>"; };
1D0CB33423204D120076AAAA /* ALAutoLayoutBannerAdViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ALAutoLayoutBannerAdViewController.h; sourceTree = "<group>"; };
1D0CB33523204D120076AAAA /* ALAutoLayoutBannerAdViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ALAutoLayoutBannerAdViewController.m; sourceTree = "<group>"; };
1D992FDB231FA1C300C472F8 /* DemoApp-ObjC.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "DemoApp-ObjC.app"; sourceTree = BUILT_PRODUCTS_DIR; };
1D992FDE231FA1C300C472F8 /* ALAppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ALAppDelegate.h; sourceTree = "<group>"; };
1D992FDF231FA1C400C472F8 /* ALAppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ALAppDelegate.m; sourceTree = "<group>"; };
1D992FE1231FA1C400C472F8 /* ALHomeViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ALHomeViewController.h; sourceTree = "<group>"; };
1D992FE2231FA1C400C472F8 /* ALHomeViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ALHomeViewController.m; sourceTree = "<group>"; };
1D992FE5231FA1C400C472F8 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
1D992FE7231FA1C500C472F8 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
1D992FEA231FA1C500C472F8 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
1D992FEC231FA1C500C472F8 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
1D992FED231FA1C500C472F8 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
37C7E1E523285B4E002165B5 /* ALInterfaceBuilderBannerAdViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ALInterfaceBuilderBannerAdViewController.m; sourceTree = "<group>"; };
37C7E1E723285B6A002165B5 /* ALInterfaceBuilderBannerAdViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ALInterfaceBuilderBannerAdViewController.h; sourceTree = "<group>"; };
37C7E1E823285E94002165B5 /* ALFrameLayoutBannerAdViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ALFrameLayoutBannerAdViewController.m; sourceTree = "<group>"; };
37C7E1EA23285EDF002165B5 /* ALFrameLayoutBannerAdViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ALFrameLayoutBannerAdViewController.h; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
1D992FD8231FA1C300C472F8 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
1D0CB33823204EBD0076AAAA /* Ads */ = {
isa = PBXGroup;
children = (
1D0CB33423204D120076AAAA /* ALAutoLayoutBannerAdViewController.h */,
1D0CB33523204D120076AAAA /* ALAutoLayoutBannerAdViewController.m */,
37C7E1EA23285EDF002165B5 /* ALFrameLayoutBannerAdViewController.h */,
37C7E1E823285E94002165B5 /* ALFrameLayoutBannerAdViewController.m */,
1D0CB32E23204CE70076AAAA /* ALInterstitialAdViewController.h */,
1D0CB32F23204CE70076AAAA /* ALInterstitialAdViewController.m */,
1D0CB33123204CF70076AAAA /* ALRewardedAdViewController.h */,
1D0CB33223204CF70076AAAA /* ALRewardedAdViewController.m */,
37C7E1E723285B6A002165B5 /* ALInterfaceBuilderBannerAdViewController.h */,
37C7E1E523285B4E002165B5 /* ALInterfaceBuilderBannerAdViewController.m */,
);
path = Ads;
sourceTree = "<group>";
};
1D992FD2231FA1C300C472F8 = {
isa = PBXGroup;
children = (
1D992FDD231FA1C300C472F8 /* DemoApp-ObjC */,
1D992FDC231FA1C300C472F8 /* Products */,
);
sourceTree = "<group>";
};
1D992FDC231FA1C300C472F8 /* Products */ = {
isa = PBXGroup;
children = (
1D992FDB231FA1C300C472F8 /* DemoApp-ObjC.app */,
);
name = Products;
sourceTree = "<group>";
};
1D992FDD231FA1C300C472F8 /* DemoApp-ObjC */ = {
isa = PBXGroup;
children = (
1D0CB33823204EBD0076AAAA /* Ads */,
1D992FDE231FA1C300C472F8 /* ALAppDelegate.h */,
1D992FDF231FA1C400C472F8 /* ALAppDelegate.m */,
1D992FE1231FA1C400C472F8 /* ALHomeViewController.h */,
1D992FE2231FA1C400C472F8 /* ALHomeViewController.m */,
1D993015231FA39000C472F8 /* Supporting Files */,
);
path = "DemoApp-ObjC";
sourceTree = "<group>";
};
1D993015231FA39000C472F8 /* Supporting Files */ = {
isa = PBXGroup;
children = (
1D992FED231FA1C500C472F8 /* main.m */,
1D992FEC231FA1C500C472F8 /* Info.plist */,
1D992FE7231FA1C500C472F8 /* Assets.xcassets */,
1D992FE9231FA1C500C472F8 /* LaunchScreen.storyboard */,
1D992FE4231FA1C400C472F8 /* Main.storyboard */,
);
path = "Supporting Files";
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
1D992FDA231FA1C300C472F8 /* DemoApp-ObjC */ = {
isa = PBXNativeTarget;
buildConfigurationList = 1D992FF1231FA1C500C472F8 /* Build configuration list for PBXNativeTarget "DemoApp-ObjC" */;
buildPhases = (
1D992FD7231FA1C300C472F8 /* Sources */,
1D992FD8231FA1C300C472F8 /* Frameworks */,
1D992FD9231FA1C300C472F8 /* Resources */,
);
buildRules = (
);
dependencies = (
);
name = "DemoApp-ObjC";
productName = "DemoApp-ObjC";
productReference = 1D992FDB231FA1C300C472F8 /* DemoApp-ObjC.app */;
productType = "com.apple.product-type.application";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
1D992FD3231FA1C300C472F8 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 1030;
ORGANIZATIONNAME = "AppLovin Corporation";
TargetAttributes = {
1D992FDA231FA1C300C472F8 = {
CreatedOnToolsVersion = 10.3;
};
};
};
buildConfigurationList = 1D992FD6231FA1C300C472F8 /* Build configuration list for PBXProject "DemoApp-ObjC" */;
compatibilityVersion = "Xcode 9.3";
developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
en,
Base,
);
mainGroup = 1D992FD2231FA1C300C472F8;
productRefGroup = 1D992FDC231FA1C300C472F8 /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
1D992FDA231FA1C300C472F8 /* DemoApp-ObjC */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
1D992FD9231FA1C300C472F8 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
1D992FEB231FA1C500C472F8 /* LaunchScreen.storyboard in Resources */,
1D992FE8231FA1C500C472F8 /* Assets.xcassets in Resources */,
1D992FE6231FA1C400C472F8 /* Main.storyboard in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
1D992FD7231FA1C300C472F8 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
37C7E1F62329742E002165B5 /* ALHomeViewController.m in Sources */,
37C7E1F523297423002165B5 /* main.m in Sources */,
37C7E1F3232892CF002165B5 /* ALAppDelegate.m in Sources */,
37C7E1EB2328904E002165B5 /* ALAutoLayoutBannerAdViewController.m in Sources */,
37C7E1EC2328904E002165B5 /* ALFrameLayoutBannerAdViewController.m in Sources */,
37C7E1ED2328904E002165B5 /* ALInterstitialAdViewController.m in Sources */,
37C7E1EE2328904E002165B5 /* ALRewardedAdViewController.m in Sources */,
37C7E1EF2328904E002165B5 /* ALInterfaceBuilderBannerAdViewController.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXVariantGroup section */
1D992FE4231FA1C400C472F8 /* Main.storyboard */ = {
isa = PBXVariantGroup;
children = (
1D992FE5231FA1C400C472F8 /* Base */,
);
name = Main.storyboard;
sourceTree = "<group>";
};
1D992FE9231FA1C500C472F8 /* LaunchScreen.storyboard */ = {
isa = PBXVariantGroup;
children = (
1D992FEA231FA1C500C472F8 /* Base */,
);
name = LaunchScreen.storyboard;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
1D992FEF231FA1C500C472F8 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "iPhone Developer";
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = dwarf;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_DYNAMIC_NO_PIC = NO;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 12.4;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
ONLY_ACTIVE_ARCH = YES;
OTHER_LDFLAGS = "-ObjC";
SDKROOT = iphoneos;
};
name = Debug;
};
1D992FF0231FA1C500C472F8 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "iPhone Developer";
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 12.4;
MTL_ENABLE_DEBUG_INFO = NO;
MTL_FAST_MATH = YES;
OTHER_LDFLAGS = "-ObjC";
SDKROOT = iphoneos;
VALIDATE_PRODUCT = YES;
};
name = Release;
};
1D992FF2231FA1C500C472F8 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = LUDVB6Z3BS;
INFOPLIST_FILE = "$(SRCROOT)/DemoApp-ObjC/Supporting Files/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = com.applovin.enterprise.apps.demoapp;
OTHER_LDFLAGS = "-ObjC";
PRODUCT_NAME = "$(TARGET_NAME)";
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Debug;
};
1D992FF3231FA1C500C472F8 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = LUDVB6Z3BS;
INFOPLIST_FILE = "$(SRCROOT)/DemoApp-ObjC/Supporting Files/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = com.applovin.enterprise.apps.demoapp;
OTHER_LDFLAGS = "-ObjC";
PRODUCT_NAME = "$(TARGET_NAME)";
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
1D992FD6231FA1C300C472F8 /* Build configuration list for PBXProject "DemoApp-ObjC" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1D992FEF231FA1C500C472F8 /* Debug */,
1D992FF0231FA1C500C472F8 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
1D992FF1231FA1C500C472F8 /* Build configuration list for PBXNativeTarget "DemoApp-ObjC" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1D992FF2231FA1C500C472F8 /* Debug */,
1D992FF3231FA1C500C472F8 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 1D992FD3231FA1C300C472F8 /* Project object */;
}

Просмотреть файл

@ -0,0 +1,15 @@
//
// ALAppDelegate.h
// DemoApp-ObjC
//
// Created by Thomas So on 9/4/19.
// Copyright © 2019 AppLovin Corporation. All rights reserved.
//
#import <UIKit/UIKit.h>
@interface ALAppDelegate : UIResponder<UIApplicationDelegate>
@property (nonatomic, strong) UIWindow *window;
@end

Просмотреть файл

@ -0,0 +1,27 @@
//
// ALAppDelegate.m
// DemoApp-ObjC
//
// Created by Thomas So on 9/4/19.
// Copyright © 2019 AppLovin Corporation. All rights reserved.
//
#import "ALAppDelegate.h"
#import <AppLovinSDK/AppLovinSDK.h>
@implementation ALAppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
#warning - Make sure to add your AppLovin SDK key in the Info.plist under the "AppLovinSdkKey" key
// Initialize the AppLovin SDK
[ALSdk shared].mediationProvider = ALMediationProviderMAX;
[[ALSdk shared] initializeSdkWithCompletionHandler:^(ALSdkConfiguration *configuration) {
// AppLovin SDK is initialized, start loading ads now or later if ad gate is reached
}];
return YES;
}
@end

Просмотреть файл

@ -0,0 +1,13 @@
//
// ALHomeViewController.h
// DemoApp-ObjC
//
// Created by Thomas So on 9/4/19.
// Copyright © 2019 AppLovin Corporation. All rights reserved.
//
#import <UIKit/UIKit.h>
@interface ALHomeViewController : UIViewController
@end

Просмотреть файл

@ -0,0 +1,23 @@
//
// ALHomeViewController.m
// DemoApp-ObjC
//
// Created by Thomas So on 9/4/19.
// Copyright © 2019 AppLovin Corporation. All rights reserved.
//
#import "ALHomeViewController.h"
@interface ALHomeViewController()
@end
@implementation ALHomeViewController
- (void)viewDidLoad
{
[super viewDidLoad];
}
@end

Просмотреть файл

@ -0,0 +1,17 @@
//
// ALAutoLayoutBannerAdViewController.h
// DemoApp-ObjC
//
// Created by Thomas So on 9/4/19.
// Copyright © 2019 AppLovin Corporation. All rights reserved.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@interface ALAutoLayoutBannerAdViewController : UIViewController
@end
NS_ASSUME_NONNULL_END

Просмотреть файл

@ -0,0 +1,80 @@
//
// ALAutoLayoutBannerAdViewController.m
// DemoApp-ObjC
//
// Created by Thomas So on 9/4/19.
// Copyright © 2019 AppLovin Corporation. All rights reserved.
//
#import "ALAutoLayoutBannerAdViewController.h"
#import <AppLovinSDK/AppLovinSDK.h>
@interface ALAutoLayoutBannerAdViewController()<MAAdViewAdDelegate>
@property (nonatomic, strong) MAAdView *adView;
@end
@implementation ALAutoLayoutBannerAdViewController
#pragma mark - View Lifecycle
- (void)viewDidLoad
{
[super viewDidLoad];
self.adView = [[MAAdView alloc] initWithAdUnitIdentifier: @"BANNER_AD_UNIT_ID"];
self.adView.delegate = self;
self.adView.translatesAutoresizingMaskIntoConstraints = NO;
// Set background or background color for banners to be fully functional
self.adView.backgroundColor = UIColor.blackColor;
// Center the banner and anchor it to the top of the screen.
CGFloat height = (UIDevice.currentDevice.userInterfaceIdiom == UIUserInterfaceIdiomPad) ? 90 : 50; // Banner height on iPhone and iPad is 50 and 90, respectively
[self.view addConstraints: @[[self constraintWithAdView: self.adView andAttribute: NSLayoutAttributeLeading],
[self constraintWithAdView: self.adView andAttribute: NSLayoutAttributeTrailing],
[self constraintWithAdView: self.adView andAttribute: NSLayoutAttributeTop],
[NSLayoutConstraint constraintWithItem: self.adView
attribute: NSLayoutAttributeHeight
relatedBy: NSLayoutRelationEqual
toItem: nil
attribute: NSLayoutAttributeNotAnAttribute
multiplier: 1.0
constant: height]]];
[self.view addSubview: self.adView];
// Load the first ad
[self.adView loadAd];
}
- (NSLayoutConstraint *)constraintWithAdView:(MAAdView *)adView andAttribute:(NSLayoutAttribute)attribute
{
return [NSLayoutConstraint constraintWithItem: self.adView
attribute: attribute
relatedBy: NSLayoutRelationEqual
toItem: self.view
attribute: attribute
multiplier: 1.0
constant: 0.0];
}
#pragma mark - MAAdDelegate Protocol
- (void)didLoadAd:(MAAd *)ad {}
- (void)didFailToLoadAdForAdUnitIdentifier:(NSString *)adUnitIdentifier withErrorCode:(NSInteger)errorCode {}
- (void)didDisplayAd:(MAAd *)ad {}
- (void)didHideAd:(MAAd *)ad {}
- (void)didClickAd:(MAAd *)ad {}
- (void)didFailToDisplayAd:(MAAd *)ad withErrorCode:(NSInteger)errorCode {}
#pragma mark - MAAdViewAdDelegate Protocol
- (void)didExpandAd:(MAAd *)ad {}
- (void)didCollapseAd:(MAAd *)ad {}
@end

Просмотреть файл

@ -0,0 +1,17 @@
//
// ALFrameLayoutBannerAdViewController.h
// DemoApp-ObjC
//
// Created by Andrew Tian on 9/10/19.
// Copyright © 2019 AppLovin Corporation. All rights reserved.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@interface ALFrameLayoutBannerAdViewController : UIViewController
@end
NS_ASSUME_NONNULL_END

Просмотреть файл

@ -0,0 +1,64 @@
//
// ALFrameLayoutBannerAdViewController.m
// DemoApp-ObjC
//
// Created by Andrew Tian on 9/10/19.
// Copyright © 2019 AppLovin Corporation. All rights reserved.
//
#import "ALFrameLayoutBannerAdViewController.h"
#import <AppLovinSDK/AppLovinSDK.h>
@interface ALFrameLayoutBannerAdViewController()<MAAdViewAdDelegate>
@property (nonatomic, strong) MAAdView *adView;
@end
@implementation ALFrameLayoutBannerAdViewController
#pragma mark - View Lifecycle
- (void)viewDidLoad
{
[super viewDidLoad];
self.adView = [[MAAdView alloc] initWithAdUnitIdentifier: @"YOUR_AD_UNIT_ID"];
self.adView.delegate = self;
// Calculate dimensions
CGFloat width = CGRectGetWidth(self.view.bounds); // Stretch to the width of the screen for banners to be fully functional
CGFloat height = (UIDevice.currentDevice.userInterfaceIdiom == UIUserInterfaceIdiomPad) ? 90 : 50; // Banner height on iPhone and iPad is 50 and 90, respectively
CGFloat x = 0;
CGFloat y = 0;
self.adView.frame = CGRectMake(x, y, width, height);
// Set background or background color for banners to be fully functional
self.adView.backgroundColor = UIColor.blackColor;
[self.view addSubview: self.adView];
// Load the first ad
[self.adView loadAd];
}
#pragma mark - MAAdDelegate Protocol
- (void)didLoadAd:(MAAd *)ad {}
- (void)didFailToLoadAdForAdUnitIdentifier:(NSString *)adUnitIdentifier withErrorCode:(NSInteger)errorCode {}
- (void)didDisplayAd:(MAAd *)ad {}
- (void)didHideAd:(MAAd *)ad {}
- (void)didClickAd:(MAAd *)ad {}
- (void)didFailToDisplayAd:(MAAd *)ad withErrorCode:(NSInteger)errorCode {}
#pragma mark - MAAdViewAdDelegate Protocol
- (void)didExpandAd:(MAAd *)ad {}
- (void)didCollapseAd:(MAAd *)ad {}
@end

Просмотреть файл

@ -0,0 +1,17 @@
//
// ALInterfaceBuilderBannerAdViewController.h
// DemoApp-ObjC
//
// Created by Andrew Tian on 9/10/19.
// Copyright © 2019 AppLovin Corporation. All rights reserved.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@interface ALInterfaceBuilderBannerAdViewController : UIViewController
@end
NS_ASSUME_NONNULL_END

Просмотреть файл

@ -0,0 +1,53 @@
//
// ALInterfaceBuilderBannerAdViewController.m
// DemoApp-ObjC
//
// Created by Andrew Tian on 9/10/19.
// Copyright © 2019 AppLovin Corporation. All rights reserved.
//
#import "ALInterfaceBuilderBannerAdViewController.h"
#import <AppLovinSDK/AppLovinSDK.h>
@interface ALInterfaceBuilderBannerAdViewController()<MAAdViewAdDelegate>
@property (nonatomic, strong) IBOutlet MAAdView *adView;
@end
@implementation ALInterfaceBuilderBannerAdViewController
#pragma mark - View Lifecycle
- (void)viewDidLoad
{
[super viewDidLoad];
// NOTE: Must set Storyboard "User Defined Runtime Attributes" for banner ad view
// Key Path = ad_unit_id
// Type = String
// Value = YOUR_AD_UNIT_ID
// Load the first ad
[self.adView loadAd];
}
#pragma mark - MAAdDelegate Protocol
- (void)didLoadAd:(MAAd *)ad {}
- (void)didFailToLoadAdForAdUnitIdentifier:(NSString *)adUnitIdentifier withErrorCode:(NSInteger)errorCode {}
- (void)didDisplayAd:(MAAd *)ad {}
- (void)didHideAd:(MAAd *)ad {}
- (void)didClickAd:(MAAd *)ad {}
- (void)didFailToDisplayAd:(MAAd *)ad withErrorCode:(NSInteger)errorCode {}
#pragma mark - MAAdViewAdDelegate Protocol
- (void)didExpandAd:(MAAd *)ad {}
- (void)didCollapseAd:(MAAd *)ad {}
@end

Просмотреть файл

@ -0,0 +1,17 @@
//
// ALInterstitialAdViewController.h
// DemoApp-ObjC
//
// Created by Thomas So on 9/4/19.
// Copyright © 2019 AppLovin Corporation. All rights reserved.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@interface ALInterstitialAdViewController : UIViewController
@end
NS_ASSUME_NONNULL_END

Просмотреть файл

@ -0,0 +1,72 @@
//
// ALInterstitialAdViewController.m
// DemoApp-ObjC
//
// Created by Thomas So on 9/4/19.
// Copyright © 2019 AppLovin Corporation. All rights reserved.
//
#import "ALInterstitialAdViewController.h"
#import <AppLovinSDK/AppLovinSDK.h>
@interface ALInterstitialAdViewController()<MAAdDelegate>
@property (nonatomic, strong) MAInterstitialAd *interstitialAd;
@end
@implementation ALInterstitialAdViewController
#pragma mark - View Lifecycle
- (void)viewDidLoad
{
[super viewDidLoad];
self.interstitialAd = [[MAInterstitialAd alloc] initWithAdUnitIdentifier: @"YOUR_AD_UNIT_ID"];
self.interstitialAd.delegate = self;
// Load the first ad
[self.interstitialAd loadAd];
}
#pragma mark - IB Actions
- (IBAction)showAd
{
if ( [self.interstitialAd isReady] )
{
[self.interstitialAd showAd];
}
}
#pragma mark - MAAdDelegate Protocol
- (void)didLoadAd:(MAAd *)ad
{
// Interstitial ad is ready to be shown. '[self.interstitialAd isReady]' will now return 'YES'
}
- (void)didFailToLoadAdForAdUnitIdentifier:(NSString *)adUnitIdentifier withErrorCode:(NSInteger)errorCode
{
// Interstitial ad failed to load. We recommend re-trying in 3 seconds.
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 3 * NSEC_PER_SEC), dispatch_get_main_queue(), ^{
[self.interstitialAd loadAd];
});
}
- (void)didDisplayAd:(MAAd *)ad {}
- (void)didClickAd:(MAAd *)ad {}
- (void)didHideAd:(MAAd *)ad
{
// Interstitial ad is hidden. Pre-load the next ad
[self.interstitialAd loadAd];
}
- (void)didFailToDisplayAd:(MAAd *)ad withErrorCode:(NSInteger)errorCode
{
// Interstitial ad failed to display. We recommend loading the next ad
[self.interstitialAd loadAd];
}
@end

Просмотреть файл

@ -0,0 +1,17 @@
//
// ALRewardedAdViewController.h
// DemoApp-ObjC
//
// Created by Thomas So on 9/4/19.
// Copyright © 2019 AppLovin Corporation. All rights reserved.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@interface ALRewardedAdViewController : UIViewController
@end
NS_ASSUME_NONNULL_END

Просмотреть файл

@ -0,0 +1,83 @@
//
// ALRewardedAdViewController.m
// DemoApp-ObjC
//
// Created by Thomas So on 9/4/19.
// Copyright © 2019 AppLovin Corporation. All rights reserved.
//
#import "ALRewardedAdViewController.h"
#import <AppLovinSDK/AppLovinSDK.h>
@interface ALRewardedAdViewController()<MARewardedAdDelegate>
@property (nonatomic, strong) MARewardedAd *rewardedAd;
@end
@implementation ALRewardedAdViewController
#pragma mark - View Lifecycle
- (void)viewDidLoad
{
[super viewDidLoad];
self.rewardedAd = [MARewardedAd sharedWithAdUnitIdentifier: @"YOUR_AD_UNIT_ID"];
self.rewardedAd.delegate = self;
// Load the first ad
[self.rewardedAd loadAd];
}
#pragma mark - IB Actions
- (IBAction)showAd
{
if ( [self.rewardedAd isReady] )
{
[self.rewardedAd showAd];
}
}
#pragma mark - MAAdDelegate Protocol
- (void)didLoadAd:(MAAd *)ad
{
// Rewarded ad is ready to be shown. '[self.rewardedAd isReady]' will now return 'YES'
}
- (void)didFailToLoadAdForAdUnitIdentifier:(NSString *)adUnitIdentifier withErrorCode:(NSInteger)errorCode
{
// Rewarded ad failed to load. We recommend re-trying in 3 seconds.
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 3 * NSEC_PER_SEC), dispatch_get_main_queue(), ^{
[self.rewardedAd loadAd];
});
}
- (void)didDisplayAd:(MAAd *)ad {}
- (void)didClickAd:(MAAd *)ad {}
- (void)didHideAd:(MAAd *)ad
{
// Rewarded ad is hidden. Pre-load the next ad
[self.rewardedAd loadAd];
}
- (void)didFailToDisplayAd:(MAAd *)ad withErrorCode:(NSInteger)errorCode
{
// Rewarded ad failed to display. We recommend loading the next ad
[self.rewardedAd loadAd];
}
#pragma mark - MARewardedAdDelegate Protocol
- (void)didStartRewardedVideoForAd:(MAAd *)ad {}
- (void)didCompleteRewardedVideoForAd:(MAAd *)ad {}
- (void)didRewardUserForAd:(MAAd *)ad withReward:(MAReward *)reward
{
// Rewarded ad was displayed and user should receive the reward
}
@end

Просмотреть файл

@ -0,0 +1,98 @@
{
"images" : [
{
"idiom" : "iphone",
"size" : "20x20",
"scale" : "2x"
},
{
"idiom" : "iphone",
"size" : "20x20",
"scale" : "3x"
},
{
"idiom" : "iphone",
"size" : "29x29",
"scale" : "2x"
},
{
"idiom" : "iphone",
"size" : "29x29",
"scale" : "3x"
},
{
"idiom" : "iphone",
"size" : "40x40",
"scale" : "2x"
},
{
"idiom" : "iphone",
"size" : "40x40",
"scale" : "3x"
},
{
"idiom" : "iphone",
"size" : "60x60",
"scale" : "2x"
},
{
"idiom" : "iphone",
"size" : "60x60",
"scale" : "3x"
},
{
"idiom" : "ipad",
"size" : "20x20",
"scale" : "1x"
},
{
"idiom" : "ipad",
"size" : "20x20",
"scale" : "2x"
},
{
"idiom" : "ipad",
"size" : "29x29",
"scale" : "1x"
},
{
"idiom" : "ipad",
"size" : "29x29",
"scale" : "2x"
},
{
"idiom" : "ipad",
"size" : "40x40",
"scale" : "1x"
},
{
"idiom" : "ipad",
"size" : "40x40",
"scale" : "2x"
},
{
"idiom" : "ipad",
"size" : "76x76",
"scale" : "1x"
},
{
"idiom" : "ipad",
"size" : "76x76",
"scale" : "2x"
},
{
"idiom" : "ipad",
"size" : "83.5x83.5",
"scale" : "2x"
},
{
"idiom" : "ios-marketing",
"size" : "1024x1024",
"scale" : "1x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Просмотреть файл

@ -0,0 +1,6 @@
{
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Просмотреть файл

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13122.16" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13104.12"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<scenes>
<!--View Controller-->
<scene sceneID="EHf-IW-A2E">
<objects>
<viewController id="01J-lp-oVM" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/>
</view>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="53" y="375"/>
</scene>
</scenes>
</document>

Просмотреть файл

@ -0,0 +1,276 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14490.70" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="7Ga-dD-PKi">
<device id="retina6_1" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14490.49"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<scenes>
<!--Home View Controller-->
<scene sceneID="kUz-88-3U0">
<objects>
<tableViewController id="Xhz-da-ENL" customClass="ALHomeViewController" customModule="DemoApp_ObjC" customModuleProvider="target" sceneMemberID="viewController">
<tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="qUe-EF-iqJ">
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
<gestureRecognizers/>
<sections>
<tableViewSection headerTitle="MAX ADS" id="Ppw-xv-c7e">
<cells>
<tableViewCell contentMode="scaleToFill" selectionStyle="blue" accessoryType="disclosureIndicator" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="rootPrototype" textLabel="8le-fN-BRS" style="IBUITableViewCellStyleDefault" id="gnk-Wm-cnP">
<rect key="frame" x="0.0" y="55.5" width="414" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="gnk-Wm-cnP" id="UDo-Oe-dll">
<rect key="frame" x="0.0" y="0.0" width="376" height="43.5"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Interstitials" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="8le-fN-BRS">
<rect key="frame" x="20" y="0.0" width="356" height="43.5"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
</tableViewCellContentView>
<connections>
<segue destination="hvg-Tw-ebo" kind="show" id="7d2-az-xxt"/>
</connections>
</tableViewCell>
<tableViewCell contentMode="scaleToFill" selectionStyle="blue" accessoryType="disclosureIndicator" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="rootPrototype" textLabel="jwg-iU-PjM" style="IBUITableViewCellStyleDefault" id="sjX-rW-J4x">
<rect key="frame" x="0.0" y="99.5" width="414" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="sjX-rW-J4x" id="haN-UP-4gB">
<rect key="frame" x="0.0" y="0.0" width="376" height="43.5"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Rewarded" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="jwg-iU-PjM">
<rect key="frame" x="20" y="0.0" width="356" height="43.5"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
</tableViewCellContentView>
<connections>
<segue destination="Ax6-sK-Kei" kind="show" id="20f-rX-ydW"/>
</connections>
</tableViewCell>
<tableViewCell contentMode="scaleToFill" selectionStyle="blue" accessoryType="disclosureIndicator" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="rootPrototype" textLabel="sqm-jN-17q" style="IBUITableViewCellStyleDefault" id="McN-1s-PdH">
<rect key="frame" x="0.0" y="143.5" width="414" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="McN-1s-PdH" id="uDH-cj-B6x">
<rect key="frame" x="0.0" y="0.0" width="376" height="43.5"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Auto Layout Banners / Leaders" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="sqm-jN-17q">
<rect key="frame" x="20" y="0.0" width="356" height="43.5"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
</tableViewCellContentView>
<connections>
<segue destination="t4N-CR-C81" kind="show" id="8jR-qK-Bq5"/>
</connections>
</tableViewCell>
<tableViewCell contentMode="scaleToFill" selectionStyle="blue" accessoryType="disclosureIndicator" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="rootPrototype" textLabel="qEz-dE-EJ6" style="IBUITableViewCellStyleDefault" id="4rA-1a-Qdu">
<rect key="frame" x="0.0" y="187.5" width="414" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="4rA-1a-Qdu" id="rWL-gK-Qk7">
<rect key="frame" x="0.0" y="0.0" width="376" height="43.5"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Frame Layout Banners / Leaders" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="qEz-dE-EJ6" userLabel="Frame Layout Banners / Leaders">
<rect key="frame" x="20" y="0.0" width="356" height="43.5"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
</tableViewCellContentView>
<connections>
<segue destination="0nG-y1-jZJ" kind="show" id="wnR-dp-cdX"/>
</connections>
</tableViewCell>
<tableViewCell contentMode="scaleToFill" selectionStyle="blue" accessoryType="disclosureIndicator" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="rootPrototype" textLabel="ibI-wO-fLO" style="IBUITableViewCellStyleDefault" id="Sj2-mt-y69">
<rect key="frame" x="0.0" y="231.5" width="414" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="Sj2-mt-y69" id="DVy-il-4Jg">
<rect key="frame" x="0.0" y="0.0" width="376" height="43.5"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="left" text="Interface Builder Banners / Leaders" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="ibI-wO-fLO">
<rect key="frame" x="20" y="0.0" width="356" height="43.5"/>
<autoresizingMask key="autoresizingMask"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
</tableViewCellContentView>
<connections>
<segue destination="Lhe-mt-J8Q" kind="show" id="943-b8-KqA"/>
</connections>
</tableViewCell>
</cells>
</tableViewSection>
</sections>
</tableView>
<navigationItem key="navigationItem" id="e1i-r7-ONc"/>
</tableViewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="0eV-wE-SZP" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="-277" y="171"/>
</scene>
<!--Navigation Controller-->
<scene sceneID="xQE-Gg-Qfm">
<objects>
<navigationController automaticallyAdjustsScrollViewInsets="NO" id="7Ga-dD-PKi" sceneMemberID="viewController">
<toolbarItems/>
<navigationBar key="navigationBar" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" id="Pkd-by-cEc">
<rect key="frame" x="0.0" y="44" width="414" height="44"/>
<autoresizingMask key="autoresizingMask"/>
</navigationBar>
<nil name="viewControllers"/>
<connections>
<segue destination="Xhz-da-ENL" kind="relationship" relationship="rootViewController" id="eu1-lC-4dr"/>
</connections>
</navigationController>
<placeholder placeholderIdentifier="IBFirstResponder" id="lXr-9K-gJw" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="-1030.4347826086957" y="170.75892857142856"/>
</scene>
<!--Interstitial Ads-->
<scene sceneID="jqw-xY-VjK">
<objects>
<viewController title="Interstitial Ads" id="hvg-Tw-ebo" customClass="ALInterstitialAdViewController" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="cMa-q4-eJl">
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="dDc-3C-PhG">
<rect key="frame" x="0.0" y="88" width="414" height="774"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
<state key="normal" title="Show"/>
<connections>
<action selector="showAd" destination="hvg-Tw-ebo" eventType="touchUpInside" id="q6T-AM-u99"/>
</connections>
</button>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<viewLayoutGuide key="safeArea" id="tt7-7E-5dX"/>
</view>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="6mE-Fk-JPR" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="470" y="-500"/>
</scene>
<!--Rewarded Ads-->
<scene sceneID="n68-Er-1n0">
<objects>
<viewController title="Rewarded Ads" id="Ax6-sK-Kei" customClass="ALRewardedAdViewController" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="NfR-Km-vOC">
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="crr-D9-EXc">
<rect key="frame" x="0.0" y="61" width="414" height="774"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
<state key="normal" title="Show"/>
<connections>
<action selector="showAd" destination="hvg-Tw-ebo" eventType="touchUpInside" id="RM4-p2-hIu"/>
<action selector="showAd" destination="Ax6-sK-Kei" eventType="touchUpInside" id="zED-Qh-dqg"/>
</connections>
</button>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<viewLayoutGuide key="safeArea" id="P0W-JD-8nB"/>
</view>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="g63-20-XpD" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="471" y="171"/>
</scene>
<!--Auto Layout Banner Ads-->
<scene sceneID="whl-QQ-Von">
<objects>
<viewController title="Auto Layout Banner Ads" id="t4N-CR-C81" customClass="ALAutoLayoutBannerAdViewController" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="uUJ-XM-qql">
<rect key="frame" x="0.0" y="0.0" width="414" height="808"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<viewLayoutGuide key="safeArea" id="mAF-qa-bfO"/>
</view>
<extendedEdge key="edgesForExtendedLayout" bottom="YES"/>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="hAI-8Y-gAP" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="470" y="841"/>
</scene>
<!--Frame Layout Banner Ads-->
<scene sceneID="U9h-UA-DzG">
<objects>
<viewController title="Frame Layout Banner Ads" id="0nG-y1-jZJ" customClass="ALFrameLayoutBannerAdViewController" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="3Wt-xw-LQM">
<rect key="frame" x="0.0" y="0.0" width="414" height="808"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<viewLayoutGuide key="safeArea" id="5d1-qc-8SX"/>
</view>
<extendedEdge key="edgesForExtendedLayout" bottom="YES"/>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="SaY-Tu-Pxg" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="1197" y="840"/>
</scene>
<!--Delegate-->
<scene sceneID="xhy-cf-ZfV">
<objects>
<viewController title="Interface Builder Banner Ads" id="Lhe-mt-J8Q" customClass="ALInterfaceBuilderBannerAdViewController" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="W3k-OJ-EjN">
<rect key="frame" x="0.0" y="0.0" width="414" height="808"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="R5C-91-3ir" customClass="MAAdView">
<rect key="frame" x="0.0" y="0.0" width="414" height="50"/>
<color key="backgroundColor" white="0.66666666669999997" alpha="1" colorSpace="calibratedWhite"/>
<constraints>
<constraint firstAttribute="height" constant="50" id="KOc-zK-MqA"/>
</constraints>
<userDefinedRuntimeAttributes>
<userDefinedRuntimeAttribute type="string" keyPath="ad_unit_id" value="BANNER_AD_UNIT_ID"/>
</userDefinedRuntimeAttributes>
<connections>
<outlet property="delegate" destination="Lhe-mt-J8Q" id="7gx-Rn-iry"/>
</connections>
</view>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<constraints>
<constraint firstItem="R5C-91-3ir" firstAttribute="top" secondItem="W3k-OJ-EjN" secondAttribute="top" id="3vc-81-DKA"/>
<constraint firstItem="kyo-bA-O0z" firstAttribute="trailing" secondItem="R5C-91-3ir" secondAttribute="trailing" id="Cz2-ZK-Xl9"/>
<constraint firstItem="R5C-91-3ir" firstAttribute="leading" secondItem="kyo-bA-O0z" secondAttribute="leading" id="f0U-cg-ZKR"/>
</constraints>
<viewLayoutGuide key="safeArea" id="kyo-bA-O0z"/>
</view>
<extendedEdge key="edgesForExtendedLayout" bottom="YES"/>
<connections>
<outlet property="adView" destination="R5C-91-3ir" id="WCn-2m-59X"/>
</connections>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="MII-Ur-vbY" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="1920" y="840"/>
</scene>
</scenes>
</document>

Просмотреть файл

@ -0,0 +1,49 @@
<?xml version="1.0" encoding="UTF-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>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleDisplayName</key>
<string>AppLovin</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.0.0</string>
<key>CFBundleVersion</key>
<string>1000000</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>UILaunchStoryboardName</key>
<string>LaunchScreen</string>
<key>UIMainStoryboardFile</key>
<string>Main</string>
<key>UIRequiredDeviceCapabilities</key>
<array>
<string>armv7</string>
</array>
<key>UISupportedInterfaceOrientations</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
</array>
<key>UISupportedInterfaceOrientations~ipad</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
<string>UIInterfaceOrientationPortraitUpsideDown</string>
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
</array>
<key>AppLovinSdkKey</key>
<string>SDK_KEY_HERE</string>
</dict>
</plist>

Просмотреть файл

@ -0,0 +1,16 @@
//
// main.m
// DemoApp-ObjC
//
// Created by Thomas So on 9/4/19.
// Copyright © 2019 AppLovin Corporation. All rights reserved.
//
#import <UIKit/UIKit.h>
#import "ALAppDelegate.h"
int main(int argc, char * argv[]) {
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([ALAppDelegate class]));
}
}

6
DemoApp-ObjC/Podfile Normal file
Просмотреть файл

@ -0,0 +1,6 @@
use_frameworks!
inhibit_all_warnings!
target 'DemoApp-ObjC' do
pod 'AppLovinSDK'
end