Skip to content

Commit 2cd47cc

Browse files
committed
支持苹果M系列芯片模拟器arm64架构
1 parent 6dabaa8 commit 2cd47cc

12 files changed

Lines changed: 1117 additions & 1 deletion

File tree

.DS_Store

6 KB
Binary file not shown.

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2019 openinstall
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,4 @@
11
# openinstall-iosxcframework-pod
2-
openinstall's officially supported iOS XCFramework SDK for pod.
2+
openinstall's officially supported iOS xcframework SDK for pod. openinstall官方支持的iOS SDK pod.
3+
4+
### 详细文档请查看 [iOS集成文档](https://www.openinstall.io/doc/ios_sdk.html)
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
Pod::Spec.new do |s|
2+
s.name = "libOpenInstallSDK-xcframework"
3+
s.version = '2.8.5'
4+
s.summary = "openinstall's officially supported iOS xcframework SDK"
5+
s.description = <<-DESC
6+
openinstall's officially supported iOS xcframework SDK for pod.
7+
DESC
8+
9+
s.homepage = "https://www.openinstall.io"
10+
s.license = 'MIT'
11+
s.author = { "Cooper" => "appopeninstall@gmail.com"}
12+
s.source = { :git => "https://github.com/OpenInstall/openinstall-iosxcframework-pod.git", :tag => s.version.to_s }
13+
14+
s.ios.vendored_frameworks = 'libOpenInstallSDK.xcframework'
15+
16+
s.platform = :ios, '9.0'
17+
18+
end
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+
<plist version="1.0">
4+
<dict>
5+
<key>AvailableLibraries</key>
6+
<array>
7+
<dict>
8+
<key>HeadersPath</key>
9+
<string>Headers</string>
10+
<key>LibraryIdentifier</key>
11+
<string>ios-arm64_armv7</string>
12+
<key>LibraryPath</key>
13+
<string>libOpenInstallSDK.a</string>
14+
<key>SupportedArchitectures</key>
15+
<array>
16+
<string>arm64</string>
17+
<string>armv7</string>
18+
</array>
19+
<key>SupportedPlatform</key>
20+
<string>ios</string>
21+
</dict>
22+
<dict>
23+
<key>HeadersPath</key>
24+
<string>Headers</string>
25+
<key>LibraryIdentifier</key>
26+
<string>ios-arm64_i386_x86_64-simulator</string>
27+
<key>LibraryPath</key>
28+
<string>libOpenInstallSDK.a</string>
29+
<key>SupportedArchitectures</key>
30+
<array>
31+
<string>arm64</string>
32+
<string>i386</string>
33+
<string>x86_64</string>
34+
</array>
35+
<key>SupportedPlatform</key>
36+
<string>ios</string>
37+
<key>SupportedPlatformVariant</key>
38+
<string>simulator</string>
39+
</dict>
40+
</array>
41+
<key>CFBundlePackageType</key>
42+
<string>XFWK</string>
43+
<key>XCFrameworkFormatVersion</key>
44+
<string>1.0</string>
45+
</dict>
46+
</plist>
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+
<plist version="1.0">
4+
<dict>
5+
<key>NSPrivacyAccessedAPITypes</key>
6+
<array>
7+
<dict>
8+
<key>NSPrivacyAccessedAPIType</key>
9+
<string>NSPrivacyAccessedAPICategoryUserDefaults</string>
10+
<key>NSPrivacyAccessedAPITypeReasons</key>
11+
<array>
12+
<string>CA92.1</string>
13+
</array>
14+
</dict>
15+
</array>
16+
<key>NSPrivacyCollectedDataTypes</key>
17+
<array/>
18+
<key>NSPrivacyTracking</key>
19+
<false/>
20+
<key>NSPrivacyTrackingDomains</key>
21+
<array/>
22+
</dict>
23+
</plist>
Lines changed: 247 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,247 @@
1+
//
2+
// OpenInstallSDK.h
3+
// OpenInstallSDK
4+
//
5+
// Created by toby on 16/8/11.
6+
// Copyright © 2016年 toby. All rights reserved.
7+
//
8+
9+
#import <Foundation/Foundation.h>
10+
#import "OpeninstallData.h"
11+
12+
@protocol OpenInstallDelegate<NSObject>
13+
14+
@optional
15+
16+
#pragma mark - 推荐使用最新API:<code>getInstallParmsCompleted</code>
17+
/**
18+
* 安装时获取h5页面动态参数(如果是渠道链接,渠道编号会一起返回)
19+
* @param params 动态参数
20+
* @param error 错误回调
21+
* @discussion 老版本sdk升级过来可延用该api
22+
*/
23+
- (void)getInstallParamsFromOpenInstall:(nullable NSDictionary *)params withError:(nullable NSError *)error __deprecated_msg("Deprecated func,请使用方法<code>getInstallParmsCompleted</code>");
24+
25+
26+
///----------------------
27+
/// @name 一键拉起的回调方法
28+
///----------------------
29+
30+
#pragma mark - 推荐使用最新API:<code>getWakeUpParams</code>
31+
/**
32+
* 唤醒时获取h5页面动态参数(如果是渠道链接,渠道编号会一起返回)
33+
* @param params 动态参数
34+
* @param error 错误回调
35+
* @discussion 老版本sdk升级过来可延用该api
36+
*/
37+
- (void)getWakeUpParamsFromOpenInstall:(nullable NSDictionary *)params withError:(nullable NSError *)error __deprecated_msg("Deprecated func,请使用方法<code>getWakeUpParams</code>");
38+
39+
40+
#pragma mark - add in v2.2.0
41+
/**
42+
* 唤醒时获取h5页面动态参数(如果是渠道链接,渠道编号会一起返回)
43+
* @param appData 动态参数对象
44+
*/
45+
- (void)getWakeUpParams:(nullable OpeninstallData *)appData;
46+
47+
@end
48+
49+
@interface OpenInstallSDK : NSObject
50+
51+
/**
52+
* 获取sdk当前版本号,add in v2.2.1
53+
*/
54+
+ (NSString *_Nullable)sdkVersion;
55+
56+
57+
/**
58+
* SDK单例,returns a previously instantiated singleton instance of the API.
59+
*/
60+
+(instancetype _Nullable)defaultManager;
61+
62+
63+
///-------------
64+
/// @name 初始化
65+
///-------------
66+
67+
#pragma mark - added in v2.2.0 请在Info.plist中配置应用的appkey
68+
69+
/**
70+
* 初始化OpenInstall SDK
71+
* ***调用该方法前,需在Info.plist文件中配置键值对,键为com.openinstall.APP_KEY不能修改,值为相应的应用的appKey,可在openinstall官方后台查看***
72+
73+
<key>com.openinstall.APP_KEY</key>
74+
<string>你的appKey</string>
75+
76+
* @param delegate 委托方法所在的类的对象
77+
*/
78+
+(void)initWithDelegate:(id<OpenInstallDelegate> _Nonnull)delegate;
79+
80+
81+
#pragma mark - added in v2.4.0
82+
/**
83+
* 初始化sdk并传入广告标识符id(可选)
84+
* ***调用该方法前,需在Info.plist文件中配置键值对,键为com.openinstall.APP_KEY不能修改,值为相应的应用的appKey,可在openinstall官方后台查看***
85+
*
86+
* @param adid 广告标识符,需用户自己获取并传入,默认为空,传入nil则与初始化方法 initwithDelegate: 一致
87+
* @param delegate 委托方法所在的类的对象
88+
* @discussion 1、只有需要使用“广告平台渠道”进行广告效果监测的用户才需调用,2、需开启后台开关,位置:"iOS集成"->"iOS应用配置"->"广告平台对接"
89+
* ***详细文档请查看:https://www.openinstall.io/doc/ad_ios.html***
90+
*/
91+
+ (void)initWithDelegate:(nullable id<OpenInstallDelegate>)delegate advertisingId:(NSString *_Nullable)adid;
92+
93+
94+
#pragma mark - added in v2.5.4
95+
96+
/**
97+
* 初始化sdk,并传入广告相关参数
98+
* 详细参考官网文档
99+
*
100+
* @param delegate 委托方法所在的类的对象
101+
* @param attribution 广告相关参数,如ASA token,idfa等,@{OP_ASA_Token:@"your ASA Token"}
102+
* 参考文档 https://www.openinstall.io/doc/asa.html
103+
*/
104+
+ (void)initWithDelegate:(nullable id<OpenInstallDelegate>)delegate adsAttribution:(NSDictionary *_Nullable)attribution;
105+
106+
107+
#pragma mark - Deprecated in v2.2.0(已废弃)
108+
109+
/**
110+
* 初始化OpenInstall SDK (已废弃,请参考方法 initwithDelegate: 已使用该初始化方法的用户也可继续使用)
111+
*
112+
* @param appKey 控制中心创建应用获取appKey
113+
* @param delegate 委托方法(getWakeUpParams)所在的类的对象
114+
* @discussion 老版本sdk升级过来可延用该api
115+
*/
116+
+(void)setAppKey:(nonnull NSString *)appKey withDelegate:(nullable id<OpenInstallDelegate>)delegate __deprecated_msg("Deprecated in v2.2.0,请参考方法<code>initwithDelegate</code>");
117+
118+
119+
///----------------------
120+
/// @name 获取安装的动态参数
121+
///----------------------
122+
123+
#pragma mark - added in v2.2.0
124+
125+
/**
126+
* 开发者在需要获取用户安装app后由web网页传递过来的”动态参数“(如邀请码、游戏房间号,渠道编号,ASA渠道编号等)时调用该方法,可第一时间返回数据,可在任意位置调用
127+
*
128+
* @param completedBlock 回调block,在主线程(UI线程)回调
129+
*
130+
* @discussion
131+
1、不要自己保存动态安装参数,在每次需要用到参数时,请调用该方法去获取;
132+
2、该方法默认超时长一般为8~15秒不同版本会有浮动,使用了ASA则会在30秒左右,尽量写在业务场景需要参数的位置调用(在业务场景时,网络一般都是畅通的),例如,可以选择在用户注册成功后调用该方法获取参数,对用户进行奖励。原因是iOS首次安装、首次启动的app,会询问用户获取网络权限,用户允许后SDK才能正常联网去获取参数。如果调用过早,可能导致网络权限还未允许就被调用,导致参数无法及时拿到,误以为参数不存在(此时getInstallParmsCompleted法已超时,回调返回空);
133+
3. 如果是业务需要,必须在application:didFinishLaunchingWithOptions方法中获取参数,可调用下面高级API,修改超时时长,比如30秒或更长。
134+
135+
* ***该方法可重复获取参数,如需在首次安装才获取安装参数,请自行判断,参考https://www.openinstall.io/doc/ios_sdk_faq.html***
136+
*/
137+
-(void)getInstallParmsCompleted:(void (^_Nullable)(OpeninstallData*_Nullable appData))completedBlock;
138+
139+
140+
/**
141+
* 开发者在需要获取用户安装app后由web网页传递过来的”动态参数“(如邀请码、游戏房间号,渠道编号,ASA渠道编号等)时调用该方法,可第一时间返回数据,可在任意位置调用
142+
*
143+
* @param timeoutInterval 可设置回调超时时长,单位秒(s)
144+
* @param completedBlock 回调block,在主线程(UI线程)回调
145+
*
146+
* @discussion
147+
* ***开发者不要自行保存参数!!!如果获取动态参数成功,SDK会把参数保存在本地***
148+
* ***该方法可重复获取参数,如需在首次安装才获取安装参数,请自行判断,参考https://www.openinstall.io/doc/ios_sdk_faq.html***
149+
*/
150+
-(void)getInstallParmsWithTimeoutInterval:(NSTimeInterval)timeoutInterval
151+
completed:(void (^_Nullable)(OpeninstallData*_Nullable appData))completedBlock;
152+
153+
154+
155+
#pragma mark - Deprecated in v2.1.1(已废弃)
156+
/**
157+
* 开发者直接获取动态参数,初始化之后调用(参数的正常获取时间1-2秒内)
158+
* @return NSDictionary
159+
*/
160+
+(NSDictionary *_Nullable)getOpenInstallParams __deprecated_msg("Deprecated in v2.1.1,请参考方法<code>getInstallParmsCompleted</code>");
161+
162+
163+
///---------------------
164+
/// @name 一键拉起回调处理
165+
///---------------------
166+
167+
/**
168+
* 处理 URI schemes
169+
* @param URL 系统回调传回的URL
170+
* @return bool URL是否被OpenInstall识别
171+
*/
172+
+(BOOL)handLinkURL:(NSURL *_Nullable)URL;
173+
174+
175+
/**
176+
* 处理 通用链接
177+
* @param userActivity 存储了页面信息,包括url
178+
* @return bool URL是否被OpenInstall识别
179+
*/
180+
+(BOOL)continueUserActivity:(NSUserActivity *_Nullable)userActivity;
181+
182+
183+
184+
///--------------
185+
/// @name 统计相关
186+
///--------------
187+
188+
189+
/**
190+
* 注册量统计
191+
*
192+
* 使用openinstall 控制中心提供的渠道统计时,在App用户注册完成后调用,可以统计渠道注册量。
193+
* 必须在注册成功的时再调用该方法,避免重复调用,否则可能导致注册统计不准
194+
*/
195+
+(void)reportRegister;
196+
197+
198+
#pragma mark - added in v2.2.0
199+
/**
200+
* 渠道效果统计
201+
*
202+
* 目前SDK采用定时上报策略,时间间隔由服务器控制
203+
* e.g.可统计用户支付消费情况,点击次数等
204+
*
205+
* @param effectID 效果点ID
206+
* @param effectValue 效果点值(如果是人民币金额,请以分为计量单位)
207+
*/
208+
-(void)reportEffectPoint:(NSString *_Nonnull)effectID effectValue:(long)effectValue;
209+
210+
211+
#pragma mark - added in v2.6.0
212+
/**
213+
* 渠道效果统计,效果明细上报
214+
*
215+
* 目前SDK采用定时上报策略,时间间隔由服务器控制
216+
* e.g.可统计用户支付消费情况,点击次数,以及效果明细等
217+
*
218+
* @param effectID 效果点ID
219+
* @param effectValue 效果点值(如果是人民币金额,请以分为计量单位)
220+
* @param effectDictionary 效果点明细,key和value都要传入字符串格式
221+
*/
222+
-(void)reportEffectPoint:(NSString *_Nonnull)effectID effectValue:(long)effectValue effectDictionary:(NSDictionary*_Nonnull)effectDictionary;
223+
224+
225+
#pragma mark - added in v2.7.0
226+
/**
227+
* 分享上报
228+
*
229+
* @param shareCode 分享用户ID;String 必填
230+
* @param sharePlatform 分享平台:String 建议填入 根据已创建好的“OP_SharePlatform”字符串类型填入
231+
* @param completedBlock 上报成功code=0,飞行模式/网络差/连接异常code=-1可重试,其它情况代表发生异常错误不需要重试,返回主线程
232+
*/
233+
-(void)reportShareParametersWithShareCode:(NSString *_Nonnull)shareCode
234+
sharePlatform:(OP_SharePlatform _Nullable)sharePlatform
235+
completed:(void (^_Nullable)(NSInteger code,NSString *_Nullable msg))completedBlock;
236+
237+
238+
#pragma mark - added in v2.8.0
239+
/**
240+
* 获取opid
241+
* 初始化后调用,非异步,须真机
242+
* 也可以在`getInstallParmsCompleted`方法回调里调用,等待初始化完成后返回opid
243+
*/
244+
- (NSString *_Nullable)getOpId;
245+
246+
@end
247+

0 commit comments

Comments
 (0)