Compare commits

..

810 Commits

Author SHA1 Message Date
xiekaidong
90af1ffd08 提升版本号 2024-12-26 09:39:41 +08:00
xiekaidong
405413a212 更新配置 2024-12-23 14:40:01 +08:00
xiekaidong
9488ff2513 fix 2024-11-25 15:03:43 +08:00
xiekaidong
2a42432a18 更新配置 2024-11-21 17:17:59 +08:00
xiekaidong
874e4f85fc 提升版本号 2024-10-29 09:47:07 +08:00
xiekaidong
62c2e9cfc3 fix 2024-10-29 09:43:50 +08:00
xiekaidong
49bafa2fac 更新配置 2024-10-28 09:38:39 +08:00
xiekaidong
7739b7d291 提升版本号 2024-09-23 15:06:20 +08:00
xiekaidong
f0f4c639c0 更新配置 2024-09-23 15:03:28 +08:00
xiekaidong
b6d20fe9cd 提升版本号 2024-08-27 11:12:01 +08:00
xiekaidong
f7a4d2aa47 更新配置 2024-08-27 11:10:52 +08:00
chenxi
f3cac19afe 打包设置 2024-07-22 18:11:18 +08:00
xiekaidong
8538803485 更新配置 2024-07-22 16:47:06 +08:00
xiekaidong
be63ed686d 提升版本号 2024-07-22 16:28:09 +08:00
xiekaidong
67e9e2606f 提升APITarget 2024-07-22 16:19:55 +08:00
xiekaidong
7a015b49c0 更新配置 2024-07-22 12:02:26 +08:00
xiekaidong
8910eb7a9a 升版本 2024-06-24 15:08:26 +08:00
xiekaidong
7736db2fd8 Merge branch 'dev_20240625' 2024-06-24 15:06:32 +08:00
xiekaidong
f7e06bbbb0 更新配置 2024-06-24 15:06:20 +08:00
xiekaidong
9c606c912c 更新配置 2024-06-24 11:07:14 +08:00
chenxi
b29592f4ba 删除不删除不用的过时的库 2024-06-19 14:49:35 +08:00
chenxi
93870ca319 Merge branch 'master' of git.juzugame.com:b6-client/b6-unity 2024-06-19 11:53:17 +08:00
chenxi
10a8fb1bd4 升级支付库 2024-06-19 11:53:08 +08:00
xiekaidong
f0a42fe98e 更新配置 2024-05-27 11:39:25 +08:00
xiekaidong
3cb8082e95 更新配置 2024-05-23 14:26:12 +08:00
xiekaidong
000bf11a3c 提升版本号 2024-04-25 10:19:37 +08:00
xiekaidong
94bf2f7e8d 更新配置 2024-04-25 10:18:02 +08:00
xiekaidong
ecb8126410 更新配置 2024-04-24 14:35:19 +08:00
xiekaidong
fb5452c195 修改版本号 2024-03-26 09:52:58 +08:00
xiekaidong
bbba324be0 更新配置 2024-03-26 09:52:07 +08:00
xiekaidong
0d8ae2d971 更新配置 2024-03-21 16:43:53 +08:00
xiekaidong
10fdfacc3d fix 2024-02-21 15:35:50 +08:00
xiekaidong
c664cf5dad 提升版本号 2024-02-21 15:26:41 +08:00
xiekaidong
a758dcc6cb 更新配置 2024-02-19 15:14:15 +08:00
xiekaidong
1868e0240b 提升版本号 2024-01-31 11:52:28 +08:00
xiekaidong
915b2d063d 更新配置 2024-01-31 11:09:22 +08:00
xiekaidong
0a437537bc 检查工具 2024-01-31 11:03:00 +08:00
xiekaidong
28e0b2c050 提升版本号,设置abname 2024-01-26 14:31:09 +08:00
xiekaidong
aa3289de03 更新配置 2024-01-26 14:25:30 +08:00
xiekaidong
7193f5dcbe fix 2024-01-26 11:09:44 +08:00
Fang
bb32c2d7d7 删除资源 2024-01-26 10:08:42 +08:00
Fang
4edac166cb 资源 2024-01-26 10:08:06 +08:00
Fang
9281fa7205 资源导入 2024-01-25 14:46:37 +08:00
Fang
5aa8a23495 战令更新 2024-01-24 15:53:54 +08:00
d4be4b43e6 1 2024-01-24 10:36:59 +08:00
fa077c8263 0049 2024-01-22 19:47:28 +08:00
xiekaidong
ed8226641d 更新配置表 2023-12-26 17:23:22 +08:00
xiekaidong
093f14b332 版本号修改 2023-12-26 16:01:39 +08:00
xiekaidong
0a47f14639 设置abName 2023-12-26 15:55:54 +08:00
xiekaidong
49d3ec38f9 资源检查 2023-12-26 15:04:26 +08:00
xiekaidong
d9229a681c 更新配置 2023-12-26 15:02:13 +08:00
3a4eb9b1bb 111111111 2023-12-26 14:40:00 +08:00
Fang
5ff0c61668 战令入口bannner导入 2023-12-26 10:52:06 +08:00
Fang
122cc3b38b 竞技场bannner导入 2023-12-25 17:50:26 +08:00
Fang
9c9fe3ec54 头像资源上传 2023-12-25 17:30:39 +08:00
Fang
3eb1cf0802 竞技场头像框素材导入 2023-12-25 15:44:53 +08:00
xiekaidong
56ef059eb8 Merge branch 'dev_20231225' of http://git.juzugame.com/b6-client/b6-unity into dev_20231225 2023-12-25 11:28:54 +08:00
xiekaidong
ee98d9f79a 修复 2023-12-25 11:28:48 +08:00
zhangpengfei
2f51ae1ae6 主角修改 2023-12-25 10:52:52 +08:00
xiekaidong
3930c8fdd7 资源 2023-12-25 10:27:20 +08:00
xiekaidong
2867004de9 更新配置 2023-12-25 10:05:21 +08:00
xiekaidong
b36d71eaf3 符文之塔bug修复 2023-12-25 09:51:39 +08:00
xiekaidong
b8252ea632 资源处理 2023-11-16 14:53:57 +08:00
Fang
7a978d23e6 导入头像框 2023-11-16 14:30:21 +08:00
xiekaidong
ab7b5bc5fc 提升版本号 2023-11-15 16:31:16 +08:00
xiekaidong
f63a371e34 更新配置资源检查 2023-11-15 16:06:21 +08:00
xiekaidong
0c30b628b5 Merge branch 'dev_20231121' of http://git.juzugame.com/b6-client/b6-unity into dev_20231121 2023-11-15 10:49:00 +08:00
xiekaidong
41b3ffa70d 音效 2023-11-15 10:48:40 +08:00
Fang
931b027788 导入头像、竞技场入口banner资源 2023-11-15 10:36:32 +08:00
1d7a2b6d8a 1111 2023-11-15 09:50:22 +08:00
9f66ce34ac 1111111 2023-11-14 19:22:49 +08:00
Fang
6ca3d26981 通行证入口banner修改 2023-11-14 18:12:50 +08:00
Fang
e5c0e0e410 竞技场界面spine导入、战令spine修改 2023-11-14 18:05:58 +08:00
xiekaidong
956e0fc450 竞技场bug修复 2023-11-10 10:37:24 +08:00
zhangpengfei
6b868e2614 boss动画修改 2023-11-09 20:15:18 +08:00
195a4fcb6c 小怪动作修改 2023-11-09 19:57:59 +08:00
zhangpengfei
14753f4ff0 新皮肤上传 2023-11-08 18:14:01 +08:00
xiekaidong
9679193809 提升版本号 2023-10-31 10:32:01 +08:00
chenxi
4472be6385 还原 2023-10-30 14:02:35 +08:00
chenxi
83a73f90f2 Merge branch 'master' into dev_ironsource 2023-10-30 11:31:03 +08:00
chenxi
f850de3096 升级sdk 2023-10-27 17:49:52 +08:00
xiekaidong
0bffde22a1 提升版本号 2023-10-27 17:45:22 +08:00
xiekaidong
34a91873b6 锁定buff修复 2023-10-27 16:01:13 +08:00
chenxi
bfe54cca00 build.gradle 2023-10-27 14:24:31 +08:00
chenxi
abfddf5100 升级ironsource 2023-10-26 19:55:37 +08:00
xiekaidong
e66680a204 提升版本号 2023-10-26 11:12:06 +08:00
xiekaidong
08c82f82bc 多语言 2023-10-26 10:50:30 +08:00
xiekaidong
b8f3b9530e bug修复 2023-10-26 10:39:37 +08:00
xiekaidong
cdae36a0c5 更新资源、提升版本号、设置abName 2023-10-23 14:38:12 +08:00
xiekaidong
22619de917 资源检查 2023-10-23 14:32:03 +08:00
xiekaidong
55f0519824 更新配置 2023-10-23 10:36:35 +08:00
Fang
cabbc6f24a 锦标赛战令、礼包购买次数刷新fix 2023-10-20 18:41:03 +08:00
Fang
c9f70b1833 更表 2023-10-20 18:10:46 +08:00
Fang
e998aa73de 导入竞技场banner spine 2023-10-20 18:09:38 +08:00
Fang
41eb07e262 修改资源命名 2023-10-20 17:12:53 +08:00
xiekaidong
9e29e2b527 音效 2023-10-20 16:58:20 +08:00
zhangpengfei
78ebbdb287 角色修改 2023-10-20 16:32:57 +08:00
Fang
68fe25fc5f 更表 2023-10-20 16:08:27 +08:00
0f7a10bd19 111111111 2023-10-20 15:51:39 +08:00
Fang
1777464ea5 导入ui资源 2023-10-20 15:41:36 +08:00
zhangpengfei
d38336d49c p0046角色上传 2023-10-19 15:49:04 +08:00
Fang
17072fed51 战令banner spine导入 2023-10-18 18:18:29 +08:00
xiekaidong
6c60435457 提升版本号 2023-10-16 17:03:55 +08:00
Fang
2b3f91e516 锦标赛升级显示fix 2023-10-16 16:31:47 +08:00
xiekaidong
4a06d0df69 提升版本号 2023-10-09 18:39:17 +08:00
xiekaidong
6c37c72e4a 更新配置 2023-10-09 17:49:27 +08:00
xiekaidong
380bb080da Merge branch 'dev_20231009' of http://git.juzugame.com/b6-client/b6-unity into dev_20231009 2023-10-09 17:36:20 +08:00
xiekaidong
f7f9b292c0 设置abname 2023-10-09 17:36:06 +08:00
Fang
ab0b38c501 更表 2023-10-09 17:33:06 +08:00
Fang
928dd46290 导入第四赛季入口banner资源 2023-10-09 17:11:46 +08:00
Fang
bf52ed6083 锦标赛领全部奖励修改 2023-10-09 16:34:37 +08:00
Fang
2ae155b480 修改锦标赛积分规则 2023-10-09 16:22:19 +08:00
xiekaidong
16d550aefa 设置abname 2023-10-09 16:01:10 +08:00
xiekaidong
8304af85ef 资源检查 2023-10-09 15:57:20 +08:00
xiekaidong
135658321b 更新配置 2023-10-09 15:51:46 +08:00
xiekaidong
c86b965ee6 Merge branch 'master' into dev_20231009
# Conflicts:
#	Assets/lua/app/config/act_gift.lua.bytes
#	Assets/lua/app/config/const.lua.bytes
#	Assets/lua/app/config/skill.lua.bytes
#	Assets/lua/app/config/skill_rogue.lua.bytes
2023-10-09 15:48:59 +08:00
Fang
e2473b1d64 更表 2023-10-09 15:26:05 +08:00
Fang
a959e8a3a3 更表 2023-10-09 14:26:14 +08:00
Fang
262f74311e 锦标赛添加开启限制 2023-10-09 11:32:40 +08:00
Fang
09c0fb8c4f 符文副本结算波次处理 2023-10-09 11:10:10 +08:00
Fang
d4272eb86b 1 2023-10-09 10:57:00 +08:00
Fang
130d25ec22 符文副本结算去掉波次数据 2023-10-09 10:55:49 +08:00
Fang
06cecef8fc 超框 2023-10-09 09:42:40 +08:00
chenxi
949da0fdfd 战斗音效 2023-10-08 20:29:19 +08:00
chenxi
98cd8bd9c9 新皮肤头像 2023-10-08 20:24:41 +08:00
5575d26087 111 2023-10-08 20:12:21 +08:00
Fang
c6fb5ee0a8 锦标赛倒计时刷新fix 2023-10-08 18:30:59 +08:00
Fang
9d023efcb6 锦标赛跨组fix 2023-10-08 18:02:31 +08:00
Fang
a2b50a8315 锦标赛入口导入 2023-10-08 17:02:51 +08:00
Fang
2c40d73a0e 锦标赛战令进度条显示修改,帮助文案修改 2023-10-08 16:57:44 +08:00
Fang
2f9f35b98d fix、导入新赛季头像 2023-10-08 15:00:02 +08:00
Fang
f76dd842fc 锦标赛fix 2023-10-08 11:36:15 +08:00
Fang
0abc5d6ab5 锦标赛奖励领取效果 2023-10-07 18:12:18 +08:00
Fang
a38f6816e3 编译 2023-10-07 17:42:49 +08:00
Fang
18d2e5c1fe 编译 2023-10-07 11:58:48 +08:00
xiekaidong
68ca7492e6 梦魇bug修复 2023-10-07 09:59:02 +08:00
cc805c09f7 竞技场战令4 2023-10-07 09:48:22 +08:00
Fang
77fd785a44 导入竞技场banner资源 2023-09-28 17:47:11 +08:00
zhangpengfei
962103db4c p0045角色上传 2023-09-28 17:29:21 +08:00
Fang
b9393f591d 购买等级fix 2023-09-28 15:33:21 +08:00
Fang
1b3c0bc18b 帮助界面滚动fix 2023-09-28 15:26:44 +08:00
Fang
fcbb2a6c65 文案修改 2023-09-28 14:44:34 +08:00
Fang
b71c87b4b8 review 2023-09-28 12:00:07 +08:00
陈希
ebb7db4e18 Merge branch 'fang/tourn' into 'dev_20231009'
波次锦标赛、竞技场锦标赛

See merge request b6-client/b6-unity!19
2023-09-28 03:51:59 +00:00
Fang
d9a9716798 编译 2023-09-28 11:07:20 +08:00
Fang
3a986f6b7a 协议 2023-09-28 11:07:20 +08:00
Fang
8722d4b433 竞技场锦标赛 2023-09-28 11:07:20 +08:00
Fang
e1a49e73d9 波次锦标赛 2023-09-27 18:54:16 +08:00
xiekaidong
738f80d84b 提升版本号 2023-09-25 19:46:48 +08:00
xiekaidong
f4c431f50c 更新配置 2023-09-25 19:46:10 +08:00
Fang
45ce3c75c4 bug fix 2023-09-25 18:29:36 +08:00
xiekaidong
3ff2e9085e 提升版本号 2023-09-22 10:16:38 +08:00
xiekaidong
06d05d2fe8 更新资源 2023-09-22 10:11:51 +08:00
xiekaidong
401c2bd48f 容错 2023-09-22 09:58:41 +08:00
xiekaidong
de5805d1dc bug修复 2023-09-22 09:52:30 +08:00
xiekaidong
e5a7bad0a9 提升版本号 2023-09-21 15:20:52 +08:00
xiekaidong
992b6f5f6f 更新配置 2023-09-21 14:49:41 +08:00
xiekaidong
f0f95f01d7 删除adQuality 2023-09-20 17:59:06 +08:00
xiekaidong
9d5afff839 修改版本号 2023-09-20 17:54:20 +08:00
xiekaidong
d127666db5 更新配置 2023-09-20 17:46:07 +08:00
xiekaidong
00e53beccd 设置abname 2023-09-20 17:44:40 +08:00
xiekaidong
07c3c5334a 替换资源 2023-09-20 17:24:21 +08:00
xiekaidong
97cc288db3 更新资源 2023-09-20 17:19:36 +08:00
zhangpengfei
c83be5ae7f 皮肤动画修改 2023-09-20 17:14:45 +08:00
Fang
4f9e75da7a 显示fix 2023-09-20 16:52:02 +08:00
xiekaidong
4821b24301 清除材质冗余属性 2023-09-20 16:42:28 +08:00
xiekaidong
ba57353ad0 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-20 16:41:28 +08:00
xiekaidong
41cfc6c2b9 更新特效 2023-09-20 16:41:25 +08:00
zhangpengfei
bb625cb8e8 皮肤动画修改 2023-09-20 16:29:59 +08:00
xiekaidong
59cf73eed0 编辑器 2023-09-20 16:25:23 +08:00
xiekaidong
e8447938f9 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-20 16:04:32 +08:00
xiekaidong
c429cb382b 替换资源 2023-09-20 16:04:28 +08:00
b72212aa71 p0011版权优化 2023-09-20 15:54:27 +08:00
f48cd9d74a p0039眼睛 2023-09-20 15:42:48 +08:00
xiekaidong
ea95ca7f2c 替换资源 2023-09-20 15:20:02 +08:00
xiekaidong
91e6c226a5 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-20 15:16:45 +08:00
xiekaidong
43d34f274e 试玩功能属性加成 2023-09-20 15:16:41 +08:00
cfd7a48e82 11111 2023-09-20 15:14:57 +08:00
Fang
e65320206a 优化自动淬炼的随机假数据 2023-09-20 14:30:29 +08:00
xiekaidong
f93c89c162 修改 2023-09-20 11:46:41 +08:00
xiekaidong
16b6f9b4bc bug修复 2023-09-20 11:27:32 +08:00
xiekaidong
8a961ae07b 复活优化 2023-09-20 11:16:41 +08:00
xiekaidong
eeede315a6 优化体验 2023-09-20 10:56:35 +08:00
xiekaidong
00e6d5389f 优化符文副本重生 2023-09-20 10:55:12 +08:00
xiekaidong
07fb378809 优化符文副本重生 2023-09-20 10:54:41 +08:00
7e4834769d 符文系统-淬炼属性 2023-09-20 10:20:07 +08:00
xiekaidong
81a5a71a20 bug修复 2023-09-20 10:19:32 +08:00
Fang
24dbb7aa0b 符文随到高品质出动效时,层级调整到最高 2023-09-20 09:51:53 +08:00
Fang
ba70479f0c 符文随机假数据不展示当前等级最高两个品质 2023-09-20 09:37:04 +08:00
xiekaidong
2460664dc9 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-20 09:36:31 +08:00
xiekaidong
71b7f13375 更新资源 2023-09-20 09:36:28 +08:00
Fang
6f3e35243a fix、符文淬炼检查等级修改 2023-09-20 00:11:21 +08:00
xiekaidong
8cf8056ef4 设置一下材质球 2023-09-19 22:02:32 +08:00
xiekaidong
da59410f2b Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-19 21:16:31 +08:00
xiekaidong
a071da067a 更新资源 2023-09-19 21:16:11 +08:00
Fang
22a2bb1a5e 新号圆月活动请求fix、符文材料个数显示修改 2023-09-19 20:53:05 +08:00
xiekaidong
d72c8beab6 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-19 20:17:26 +08:00
xiekaidong
930ea28eff 更新资源 2023-09-19 20:17:17 +08:00
xiekaidong
122043a733 删除资源 2023-09-19 20:16:48 +08:00
779c698170 结算胜利失败 2023-09-19 20:13:20 +08:00
Fang
01d6a4b439 圆月头像框上传 2023-09-19 20:02:37 +08:00
xiekaidong
55c5ad0741 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-19 19:41:48 +08:00
xiekaidong
c710842d63 资源修复 2023-09-19 19:41:44 +08:00
Fang
4756312d3c 超框处理 2023-09-19 18:45:28 +08:00
xiekaidong
70c822b986 更新资源 2023-09-19 18:36:21 +08:00
xiekaidong
798fb612d3 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919
# Conflicts:
#	Assets/lua/app/config/strings/ja/global.lua.bytes
#	Assets/lua/app/userdata/activity/act_boss_rush/act_boss_rush_data.lua.bytes
2023-09-19 18:34:25 +08:00
xiekaidong
24a0670365 配置更新 2023-09-19 18:34:04 +08:00
Fang
f40b937012 更表、超框处理 2023-09-19 18:31:31 +08:00
xiekaidong
0d8a07e5fa Merge branch 'sdk_2' into dev_20230919 2023-09-19 18:24:09 +08:00
xiekaidong
5f5d13a898 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-19 18:13:14 +08:00
xiekaidong
60cb67ca4d bug修复 2023-09-19 18:13:11 +08:00
Fang
a68d772eb3 添加符文上报、符文动效fix、皮肤解锁头像fix、属性展示fix 2023-09-19 17:28:10 +08:00
xiekaidong
0aa578ce70 音效 2023-09-19 17:27:29 +08:00
xiekaidong
1d74ee3b77 bug修复 2023-09-19 17:17:18 +08:00
xiekaidong
78c5077f5b 更新资源 2023-09-19 16:51:46 +08:00
xiekaidong
6cfbfbbe50 资源替换 2023-09-19 16:43:00 +08:00
xiekaidong
02f32f15df 上报抽卡次数、特效 2023-09-19 16:05:58 +08:00
xiekaidong
d47ae896cd Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-19 15:49:54 +08:00
xiekaidong
267d580dad 特效 2023-09-19 15:45:20 +08:00
zhangpengfei
1815903a06 皮肤动画修改 2023-09-19 15:31:21 +08:00
xiekaidong
33e280187a 替换资源 2023-09-19 15:24:57 +08:00
xiekaidong
c686640095 更新配置 2023-09-19 15:04:13 +08:00
xiekaidong
16da88351d Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919
# Conflicts:
#	Assets/lua/app/config/localization/localization_global_const.lua.bytes
#	Assets/lua/app/config/skill.lua.bytes
#	Assets/lua/app/config/strings/cn/global.lua.bytes
#	Assets/lua/app/config/strings/cn/item.lua.bytes
#	Assets/lua/app/config/strings/en/equip.lua.bytes
#	Assets/lua/app/config/strings/ja/global.lua.bytes
#	Assets/lua/app/config/strings/vi/task_type.lua.bytes
#	Assets/lua/app/config/strings/zh/task_type.lua.bytes
#	Assets/lua/app/ui/hero/runes_info_comp.lua.bytes
2023-09-19 15:03:53 +08:00
xiekaidong
d32e88ac01 编译lua 2023-09-19 15:03:21 +08:00
Fang
0b59c2d77d 符文动画、属性fix 2023-09-19 15:03:02 +08:00
fb7e273422 符文淬炼-属性动画 2023-09-19 14:45:51 +08:00
chenxi
83016a2aef facebook 2023-09-19 14:45:16 +08:00
xiekaidong
9ca3f79c89 bug修复 2023-09-19 14:30:19 +08:00
xiekaidong
641cccf3c0 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-19 12:22:24 +08:00
xiekaidong
7057163384 音效 2023-09-19 12:22:20 +08:00
chenxi
1ba9f51ff8 ios package修改 2023-09-19 12:02:11 +08:00
Fang
8ec42e8a10 导入战令banner、fix 2023-09-19 11:52:59 +08:00
5ddfb7eb01 20057hit 2023-09-19 11:51:15 +08:00
Fang
e003e236ec 更表 2023-09-19 11:28:36 +08:00
xiekaidong
92508925bb Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-19 11:24:12 +08:00
xiekaidong
0942c88d19 设置 2023-09-19 11:24:01 +08:00
Fang
505a7cb8fb fix 2023-09-19 11:22:05 +08:00
xiekaidong
edfc1d0b46 修复 2023-09-19 11:20:59 +08:00
xiekaidong
37979729e0 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-19 11:05:00 +08:00
xiekaidong
5c3b431d25 提示 2023-09-19 11:04:57 +08:00
Fang
9a44044fa6 修改 2023-09-19 10:59:02 +08:00
xiekaidong
1e766a87c7 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-19 10:52:15 +08:00
xiekaidong
71058ccfee 增加战斗前后上阵英雄参数,方便查询作弊 2023-09-19 10:52:11 +08:00
Fang
6f5f4d94e9 自动淬炼加同步 2023-09-19 10:51:20 +08:00
Fang
299b03213f 1 2023-09-19 10:44:56 +08:00
Fang
6266224727 预制体修改 2023-09-19 10:42:33 +08:00
Fang
e4b953c193 导入资源 2023-09-19 10:40:16 +08:00
d1306fbb31 20058hit 2023-09-19 10:37:55 +08:00
xiekaidong
1ef890c2b4 更新图集 2023-09-19 10:10:58 +08:00
xiekaidong
03956d8ecb 资源检查 2023-09-19 09:52:01 +08:00
xiekaidong
0c0be394ac 更新图集 2023-09-19 09:45:12 +08:00
xiekaidong
beb7ae495c 删除 2023-09-19 09:44:39 +08:00
xiekaidong
1b9826fced 上传特效 2023-09-19 09:30:22 +08:00
xiekaidong
8b235c7e3a 优化 2023-09-19 09:27:16 +08:00
xiekaidong
f07e452b82 提示 2023-09-18 21:51:21 +08:00
xiekaidong
f4a61a5cbd bug修复 2023-09-18 21:35:23 +08:00
xiekaidong
c58757a314 优化 2023-09-18 21:29:17 +08:00
xiekaidong
9f0867dea5 Merge branch 'dev_20230919' into sdk_2 2023-09-18 21:18:10 +08:00
xiekaidong
fcf516ac7f 广告sdk崩溃尝试修复 2023-09-18 21:15:43 +08:00
xiekaidong
7d6398835a 优化显示 2023-09-18 21:05:52 +08:00
xiekaidong
41434625e2 bug修复 2023-09-18 20:52:32 +08:00
xiekaidong
f6e906a646 音效 2023-09-18 20:27:16 +08:00
xiekaidong
6050a42478 更新图集 2023-09-18 20:26:24 +08:00
xiekaidong
a2ff24f5a6 帮助界面 2023-09-18 20:22:02 +08:00
xiekaidong
c30e9d729c 优化和容错 2023-09-18 20:07:37 +08:00
xiekaidong
a5e8643589 图片设置 2023-09-18 19:45:53 +08:00
xiekaidong
9a29a4b382 Merge branch 'dev_20230919' into sdk_2 2023-09-18 19:12:11 +08:00
Fang
37ec3978b5 fix 2023-09-18 18:40:27 +08:00
Fang
29526815ba ui布局调整 2023-09-18 18:03:54 +08:00
xiekaidong
88632884bc Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-18 17:06:26 +08:00
xiekaidong
56fbcd4a6e 更新资源 2023-09-18 17:06:17 +08:00
Fang
3d37d44aa7 编译 2023-09-18 16:57:46 +08:00
xiekaidong
292198793e Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-18 16:39:06 +08:00
xiekaidong
3ea4515098 音效 2023-09-18 16:39:03 +08:00
Fang
b92f858295 界面优化 2023-09-18 16:38:04 +08:00
5e7537ebb0 角色版权优化03、07、08、14 2023-09-18 16:37:25 +08:00
zhangpengfei
442320c2be 旧角色替换 2023-09-18 16:12:57 +08:00
xiekaidong
188a85d723 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-18 16:04:06 +08:00
xiekaidong
9b95508c42 优化 2023-09-18 16:04:03 +08:00
Fang
bddd14fdd4 Merge branch 'fang/runes' into dev_20230919 2023-09-18 14:57:16 +08:00
Fang
448aa0659e 符文自动淬炼修改、特效完善 2023-09-18 14:57:00 +08:00
xiekaidong
c54a6c48b9 更新图集,编译lua 2023-09-18 14:53:41 +08:00
xiekaidong
b6345dce5a Merge branch 'master' into dev_20230919
# Conflicts:
#	Assets/arts/atlas/ui/common.asset
#	Assets/arts/textures/ui/common/common_lock_1.png
#	Assets/arts/textures/ui/common/common_lock_1.png.meta
#	Assets/lua/app/module/battle/controller/battle_base_controller.lua.bytes
#	Assets/lua/app/userdata/activity/act_boss_rush/act_boss_rush_data.lua.bytes
#	Assets/lua/app/userdata/battle/battle_base_data.lua.bytes
2023-09-18 14:51:32 +08:00
xiekaidong
b0ca1e6132 循环活动的一些处理 2023-09-18 14:43:39 +08:00
xiekaidong
916c9d9a69 上传特效 2023-09-18 14:09:19 +08:00
xiekaidong
94f5ea647f 界面调整 2023-09-18 12:02:52 +08:00
xiekaidong
b044273afc bug修复 2023-09-18 12:00:41 +08:00
xiekaidong
79c4fd7907 优化显示 2023-09-18 11:40:53 +08:00
xiekaidong
74681e64c7 sdk升级 2023-09-18 11:26:51 +08:00
xiekaidong
8a7e4ec47c 调整 2023-09-18 11:22:40 +08:00
xiekaidong
33e84e5cc1 优化显示 2023-09-18 11:21:37 +08:00
xiekaidong
c0aeccf71a 显示优化 2023-09-18 10:52:38 +08:00
xiekaidong
f12896f346 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-18 10:38:22 +08:00
xiekaidong
b3f490c9ac bug修复 2023-09-18 10:38:18 +08:00
Fang
94a532d553 更新图集 2023-09-18 10:21:59 +08:00
Fang
6792ac4fd7 更新 2023-09-18 10:17:16 +08:00
xiekaidong
ae1aeba1c5 编译lua 2023-09-18 09:39:22 +08:00
xiekaidong
c8ac729532 bug修复 2023-09-18 09:37:52 +08:00
xiekaidong
1cf27e1a54 编译lua 2023-09-16 20:26:20 +08:00
xiekaidong
f78213bce1 界面调整 2023-09-16 20:24:32 +08:00
xiekaidong
91dc07f589 帮助界面 2023-09-16 20:17:20 +08:00
xiekaidong
7eed36b812 选择界面表现 2023-09-16 19:39:51 +08:00
xiekaidong
ca342100a2 升级表现 2023-09-16 19:17:54 +08:00
xiekaidong
1ecdf0cd14 界面优化 2023-09-16 18:45:58 +08:00
xiekaidong
bdcf3f995b 优化 2023-09-16 18:13:32 +08:00
xiekaidong
2a8107ddce 第一版梦魇酒馆,差表现 2023-09-16 18:08:26 +08:00
xiekaidong
d924919e22 更新配置 2023-09-16 17:58:05 +08:00
xiekaidong
83a5666725 Merge branch 'dev_20230919' into limit_pvp
# Conflicts:
#	Assets/arts/atlas/ui/act_common.asset
#	Assets/arts/atlas/ui/act_common.spriteatlas
#	Assets/arts/atlas/ui/common.asset
#	Assets/arts/atlas/ui/common.spriteatlas
#	Assets/proto/protocol.bytes
2023-09-16 17:56:32 +08:00
xiekaidong
a022065ef5 界面 2023-09-16 17:52:04 +08:00
xiekaidong
78b27b7607 资源处理 2023-09-15 21:46:10 +08:00
xiekaidong
53caadd7e5 更新资源 2023-09-15 21:01:19 +08:00
xiekaidong
bcb9e60c73 界面调整 2023-09-15 21:00:29 +08:00
Fang
0d50692a4f 请求优化 2023-09-15 20:54:35 +08:00
xiekaidong
35d8383450 更新资源 2023-09-15 20:48:00 +08:00
xiekaidong
e528334190 界面处理 2023-09-15 20:46:35 +08:00
陈希
e2abf80e5d Merge branch 'fang/act' into 'dev_20230919'
圆月活动

See merge request b6-client/b6-unity!18
2023-09-15 11:33:16 +00:00
Fang
769cfbe34d 圆月活动 2023-09-15 19:23:25 +08:00
xiekaidong
753fba3b0d 更新资源 2023-09-15 18:34:09 +08:00
zhangpengfei
ee5e11f045 小丑动画修改 2023-09-15 18:20:27 +08:00
xiekaidong
ab0c8d0559 buff层级 2023-09-15 17:43:23 +08:00
xiekaidong
6f784eb8e3 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-15 17:41:40 +08:00
xiekaidong
cccce0625e pvp战斗取消元素随机加权 2023-09-15 17:41:37 +08:00
Fang
94fcea9026 竞技场结算时同步当前积分 2023-09-15 17:38:42 +08:00
zhangpengfei
b42736678e Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-15 17:38:03 +08:00
zhangpengfei
d6eb5dfbe9 新角色皮肤上传 2023-09-15 17:37:55 +08:00
xiekaidong
0ba16ffa0c 更新配置和优化显示 2023-09-15 17:37:15 +08:00
xiekaidong
1c44759790 资源 2023-09-15 17:27:22 +08:00
Fang
833a583f97 梦魇酒馆spine导入 2023-09-15 17:19:38 +08:00
zhangpengfei
37da32c547 BOSS修改 2023-09-15 16:08:11 +08:00
zhangpengfei
bbb5804a24 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-15 15:31:07 +08:00
zhangpengfei
50e9a27318 新BOSS上传 2023-09-15 15:30:59 +08:00
Fang
ebf9ec6209 导入符文解锁图片资源 2023-09-15 15:29:24 +08:00
Fang
565322e62a spine资源导入 2023-09-15 15:27:47 +08:00
xiekaidong
abbde65fff 音效 2023-09-14 21:16:02 +08:00
xiekaidong
1275c6494f 界面 2023-09-14 21:13:25 +08:00
Fang
a86dbc2116 新用户报错fix 2023-09-14 12:05:04 +08:00
Fang
575a7a90f7 编译 2023-09-14 11:08:40 +08:00
Fang
2b78eb4cc0 显示fix 2023-09-14 11:08:09 +08:00
Fang
845c800565 替换资源 2023-09-14 09:39:46 +08:00
xiekaidong
4117053230 界面调整 2023-09-13 20:43:33 +08:00
xiekaidong
d9110872bf 拼界面 2023-09-13 20:41:45 +08:00
Fang
0679e04395 属性fix 2023-09-13 18:24:56 +08:00
Fang
9345d10d6c 符文属性加成修改 2023-09-13 17:59:30 +08:00
xiekaidong
c88edc50e5 界面调整 2023-09-13 16:33:56 +08:00
xiekaidong
96f2d2fae8 bug修复 2023-09-13 16:28:01 +08:00
xiekaidong
c3a6f1e5b8 更新资源 2023-09-13 16:20:28 +08:00
xiekaidong
e0009f528e 替换资源 2023-09-13 16:12:47 +08:00
xiekaidong
9b1f58562b 替换资源 2023-09-13 16:01:33 +08:00
xiekaidong
22b2cadb96 资源资源 2023-09-13 15:59:47 +08:00
xiekaidong
7f05bf4024 兼容处理 2023-09-13 15:53:14 +08:00
Fang
f409368faa bug fix 2023-09-13 15:45:27 +08:00
xiekaidong
760e3878f4 bug修复 2023-09-13 15:34:58 +08:00
xiekaidong
178c761583 提升版本号 2023-09-13 14:59:27 +08:00
xiekaidong
d84ffd490d 资源检查更新图集 2023-09-13 14:58:54 +08:00
xiekaidong
75abb7d2bb 一些优化和审核模式处理 2023-09-13 14:56:25 +08:00
xiekaidong
ad6e8b1402 Merge branch 'master' into master_ios_assets_update 2023-09-13 14:23:35 +08:00
Fang
0a231c3f94 自动铸造开启等级 2023-09-13 11:03:18 +08:00
xiekaidong
00c9bd3bfe 还原资源 2023-09-13 10:46:12 +08:00
xiekaidong
47d4ccd4a6 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-13 09:43:43 +08:00
xiekaidong
96a0a976e6 优化 2023-09-13 09:43:41 +08:00
zhangpengfei
771b713f6d 新角色上传 2023-09-13 09:28:52 +08:00
xiekaidong
4ef44130e9 优化和上传特效 2023-09-13 09:19:18 +08:00
xiekaidong
00e06273ad 优化 2023-09-12 20:34:37 +08:00
xiekaidong
bcf3982203 显示bug修复 2023-09-12 20:27:00 +08:00
xiekaidong
eaed3e859e 资源调整 2023-09-12 20:13:37 +08:00
xiekaidong
17a349c66d 优化点击 2023-09-12 20:12:12 +08:00
xiekaidong
2a8cfe31e9 点击优化 2023-09-12 20:10:19 +08:00
xiekaidong
ce6127b71d 显示优化 2023-09-12 20:08:08 +08:00
xiekaidong
9f0fd56ab4 修复bug 2023-09-12 19:46:47 +08:00
xiekaidong
da10987311 更新资源 2023-09-12 19:20:54 +08:00
Fang
a6d3bb1803 bug fix 2023-09-12 18:44:00 +08:00
Fang
97ce41a1e3 更新配置 2023-09-12 18:11:58 +08:00
Fang
862e9200e7 容错 2023-09-12 17:59:54 +08:00
63c531b066 5英雄 2023-09-12 17:49:00 +08:00
xiekaidong
6bfab0547f bug修复 2023-09-12 16:32:07 +08:00
xiekaidong
f49e729db2 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-12 16:22:29 +08:00
xiekaidong
27308ff7fd bug修复 2023-09-12 16:22:26 +08:00
Fang
1e970493b3 优化 2023-09-12 16:17:22 +08:00
xiekaidong
6ea9e710b0 Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-unity into dev_20230919 2023-09-12 16:05:55 +08:00
xiekaidong
e0e91933e8 编译lua 2023-09-12 16:04:33 +08:00
Fang
f0e3749794 显示fix 2023-09-12 16:03:48 +08:00
Fang
dc1b6c9838 显示fix 2023-09-12 15:27:50 +08:00
Fang
37bd501110 容错处理 2023-09-12 15:05:52 +08:00
陈希
4094f79f7b Merge branch 'fang/runes' into 'dev_20230919'
符文功能

See merge request b6-client/b6-unity!17
2023-09-12 06:50:32 +00:00
xiekaidong
06f81a091a Merge branch 'master' into dev_20230919
# Conflicts:
#	Assets/lua/app/userdata/activity/fourteen_day/fourteen_day_data.lua.bytes
2023-09-12 14:41:48 +08:00
xiekaidong
bd58628e2d 更新资源 2023-09-12 14:41:23 +08:00
xiekaidong
34953bab97 回合数提示 2023-09-12 14:32:16 +08:00
xiekaidong
9ff6dbeee0 战斗优化调整 2023-09-12 12:23:40 +08:00
xiekaidong
8638d3f2e2 提升版本号 2023-09-12 11:59:13 +08:00
xiekaidong
0dcdf0fe9d Merge branch 'dev_20230912_hotupdate' of http://git.juzugame.com/b6-client/b6-unity into dev_20230912_hotupdate 2023-09-12 11:40:48 +08:00
xiekaidong
57131fb59b 调整 2023-09-12 11:40:45 +08:00
Fang
8dadc9e37d 添加容错 2023-09-12 11:26:29 +08:00
xiekaidong
1e1e4835d3 更新配置 2023-09-12 11:23:24 +08:00
xiekaidong
b5f498ad7c 优化 2023-09-12 11:17:46 +08:00
Fang
6eeff31530 符文功能 2023-09-12 10:41:44 +08:00
xiekaidong
c715f838f8 bug修复 2023-09-12 10:24:46 +08:00
xiekaidong
35193331ef 符文副本 2023-09-12 10:09:29 +08:00
xiekaidong
b8d0930d6c Merge branch 'dungeon_rune' into dev_20230919
# Conflicts:
#	Assets/proto/protocol.bytes
2023-09-12 10:08:56 +08:00
xiekaidong
b4f2b23cb2 符文副本 2023-09-12 10:06:47 +08:00
xiekaidong
29ffd0dc36 更新资源 2023-09-12 09:35:19 +08:00
xiekaidong
5b27f2c252 更新资源 2023-09-11 20:04:28 +08:00
xiekaidong
1d12b1c1e8 符文副本 2023-09-11 20:02:19 +08:00
xiekaidong
0c3788b90d 更新协议 2023-09-11 17:32:31 +08:00
xiekaidong
026350ff6a 更新资源 2023-09-11 14:02:28 +08:00
xiekaidong
6bd690e738 更新协议 2023-09-11 12:00:21 +08:00
xiekaidong
81d593d09a buff修改 2023-09-11 10:49:35 +08:00
xiekaidong
91c0c3b104 显示问题优化 2023-09-11 10:18:31 +08:00
xiekaidong
4da792de57 更新资源 2023-09-09 16:13:44 +08:00
xiekaidong
c36cb3f9e5 资源替换 2023-09-09 15:09:31 +08:00
xiekaidong
57b1dded5f 资源替换 2023-09-09 14:06:54 +08:00
xiekaidong
ebbd97f8af 更新资源 2023-09-09 13:43:51 +08:00
xiekaidong
059c6ca56b 符文副本 2023-09-08 18:54:00 +08:00
xiekaidong
11283750f3 更新协议 2023-09-08 10:56:18 +08:00
xiekaidong
2c07878a4d 判定修复 2023-09-08 10:37:37 +08:00
xiekaidong
65bbbaa0cc 界面调整 2023-09-08 10:24:39 +08:00
Fang
a586912584 添加容错 2023-09-08 10:02:17 +08:00
xiekaidong
5fe814b753 合并符文怪物表 2023-09-08 09:38:10 +08:00
xiekaidong
dbb30676a2 符文副本主界面 2023-09-07 19:15:01 +08:00
xiekaidong
2dd0c48961 界面和资源 2023-09-07 15:21:53 +08:00
xiekaidong
d83509fc3f 资源处理 2023-09-06 18:47:40 +08:00
xiekaidong
d19f63d08a 提升版本号 2023-09-06 16:59:26 +08:00
xiekaidong
c028971870 符文副本 2023-09-06 16:57:13 +08:00
Fang
de30482954 礼包红点刷新fix 2023-09-06 16:54:20 +08:00
xiekaidong
581c9a8f6e 更新配置 2023-09-06 16:49:56 +08:00
xiekaidong
980d92839d 魅惑、免疫buff,被控状态下,技能cd不递减 2023-09-06 16:28:01 +08:00
chenxi
67dfdf94c6 打包工具完善 2023-09-06 15:28:10 +08:00
xiekaidong
5e469d538f 更新资源 2023-09-06 14:10:15 +08:00
xiekaidong
d3b124c536 Merge branch 'master' into dev_20230919 2023-09-06 10:20:38 +08:00
Fang
fd2c59552e 兑换红点修改 2023-09-06 10:16:30 +08:00
xiekaidong
5587b000e9 显示修复 2023-09-05 23:44:20 +08:00
chenxi
976a5d0e7c 更新 2023-09-05 22:29:46 +08:00
chenxi
82dbf388e5 编译 2023-09-05 22:29:20 +08:00
chenxi
7089eb2821 提升版本号 2023-09-05 22:27:59 +08:00
xiekaidong
e936d45746 设置abname 2023-09-05 20:55:51 +08:00
xiekaidong
eead0cc118 更新配置 2023-09-05 20:53:27 +08:00
xiekaidong
1ac93875aa 资源检查 2023-09-05 20:52:02 +08:00
xiekaidong
58c151899f 更新配置 2023-09-05 20:24:42 +08:00
xiekaidong
e8b7ee6f1e 更新配置 2023-09-05 20:23:01 +08:00
xiekaidong
32fd1db301 bug修复 2023-09-05 20:19:56 +08:00
xiekaidong
81d9203fed 皮肤问题修复 2023-09-05 19:59:02 +08:00
xiekaidong
20802d3bea 优化 2023-09-05 18:26:28 +08:00
xiekaidong
aa3f69a043 显示优化 2023-09-05 18:24:14 +08:00
xiekaidong
3d439234a4 更新配置 2023-09-05 18:00:45 +08:00
xiekaidong
ac9253f074 编译lua 2023-09-05 17:36:54 +08:00
xiekaidong
27be90073a buff数值上线 2023-09-05 17:15:27 +08:00
xiekaidong
4bc0e14cdf 等级修改 2023-09-05 15:32:34 +08:00
xiekaidong
ea75430a03 bug修复 2023-09-05 15:28:33 +08:00
xiekaidong
4dc5debc7c 优化 2023-09-05 12:02:00 +08:00
xiekaidong
0e962c43ff bug修复 2023-09-05 11:54:38 +08:00
xiekaidong
6f0a9720b2 bug修复和优化 2023-09-05 11:47:58 +08:00
xiekaidong
0d901aff71 bug修复 2023-09-05 10:48:55 +08:00
xiekaidong
68614b6ba8 bug修复 2023-09-05 10:06:59 +08:00
xiekaidong
cbf95861d6 bug修复 2023-09-05 10:00:11 +08:00
xiekaidong
d1d8b37743 字段名修复 2023-09-05 09:25:20 +08:00
xiekaidong
45ab702c1c maxSDK升级 2023-09-04 21:00:23 +08:00
xiekaidong
1cd3210514 bug修复 2023-09-04 20:21:33 +08:00
xiekaidong
df9fb7cabb bug修复 2023-09-04 20:06:58 +08:00
xiekaidong
284fbe9bc3 bug修复 2023-09-04 19:27:03 +08:00
xiekaidong
5666c71d2b 修复一些bug 2023-09-04 18:21:26 +08:00
xiekaidong
29f0e84ee0 14天丢图问题 2023-09-04 17:50:47 +08:00
xiekaidong
8089bc6e16 倒计时优化 2023-09-04 17:25:39 +08:00
xiekaidong
8c9945cc63 倒计时优化 2023-09-04 17:25:27 +08:00
xiekaidong
24b7793c44 bug修复 2023-09-04 16:55:13 +08:00
xiekaidong
072f845722 bug修复 2023-09-04 16:52:07 +08:00
xiekaidong
48c9e677c0 侧边栏 2023-09-04 16:48:24 +08:00
xiekaidong
ca627fc958 经验 2023-09-04 16:45:29 +08:00
xiekaidong
2bd4d0aece 跳转 2023-09-04 16:31:45 +08:00
xiekaidong
8ec159b939 侧边栏 2023-09-04 16:07:07 +08:00
xiekaidong
c15bf48f06 图集,资源修改 2023-09-04 09:46:55 +08:00
xiekaidong
e4aa6e2edd 更新配置 2023-09-01 21:21:02 +08:00
xiekaidong
f7fe141786 Merge branch 'dev_20230905' into boss_rush
# Conflicts:
#	Assets/arts/atlas/icon/item.asset
#	Assets/arts/atlas/ui/act_common.asset
#	Assets/arts/atlas/ui/act_common.asset.meta
#	Assets/arts/atlas/ui/act_common.spriteatlas
#	Assets/arts/atlas/ui/act_common.spriteatlas.meta
#	Assets/arts/atlas/ui/common.asset
#	Assets/arts/spines/ui/ui_act_boss_rush_pop.meta
#	Assets/arts/spines/ui/ui_act_boss_rush_pop/ui_act_boss_rush_pop.atlas.txt.meta
#	Assets/arts/spines/ui/ui_act_boss_rush_pop/ui_act_boss_rush_pop.png.meta
#	Assets/arts/spines/ui/ui_act_boss_rush_pop/ui_act_boss_rush_pop.skel.bytes
#	Assets/arts/spines/ui/ui_act_boss_rush_pop/ui_act_boss_rush_pop.skel.bytes.meta
#	Assets/arts/spines/ui/ui_act_boss_rush_pop/ui_act_boss_rush_pop_atlas.asset
#	Assets/arts/spines/ui/ui_act_boss_rush_pop/ui_act_boss_rush_pop_atlas.asset.meta
#	Assets/arts/spines/ui/ui_act_boss_rush_pop/ui_act_boss_rush_pop_material.mat
#	Assets/arts/spines/ui/ui_act_boss_rush_pop/ui_act_boss_rush_pop_material.mat.meta
#	Assets/arts/spines/ui/ui_act_boss_rush_pop/ui_act_boss_rush_pop_skeletondata.asset
#	Assets/arts/spines/ui/ui_act_boss_rush_pop/ui_act_boss_rush_pop_skeletondata.asset.meta
#	Assets/arts/textures/icon/item/51.png.meta
#	Assets/arts/textures/ui/act_common.meta
#	Assets/arts/textures/ui/act_common/act_common_3.png.meta
#	Assets/arts/textures/ui/act_common/act_common_bg_1.png.meta
#	Assets/arts/textures/ui/act_common/act_common_bg_2.png.meta
#	Assets/arts/textures/ui/act_common/act_common_bg_3.png.meta
#	Assets/arts/textures/ui/act_common/act_common_bg_4.png.meta
#	Assets/arts/textures/ui/act_common/act_common_bg_5.png.meta
#	Assets/arts/textures/ui/act_common/act_common_bg_6.png.meta
#	Assets/arts/textures/ui/act_common/act_common_board_1.png.meta
#	Assets/arts/textures/ui/act_common/act_common_board_2.png.meta
#	Assets/arts/textures/ui/act_common/act_common_board_3.png.meta
#	Assets/arts/textures/ui/act_common/act_common_board_4.png.meta
#	Assets/arts/textures/ui/act_common/act_common_board_5.png.meta
#	Assets/arts/textures/ui/act_common/act_common_dec_1.png.meta
#	Assets/arts/textures/ui/act_common/act_common_line_1.png.meta
#	Assets/arts/textures/ui/act_common/act_common_line_2.png.meta
#	Assets/arts/textures/ui/act_common/act_common_progress_1.png.meta
#	Assets/arts/textures/ui/act_common/act_common_progress_bg.png.meta
#	Assets/arts/textures/ui/act_common/act_common_select.png.meta
#	Assets/arts/textures/ui/act_common/act_fourteen_dec_1.png.meta
#	Assets/arts/textures/ui/act_common/act_fourteen_dec_2.png.meta
#	Assets/arts/textures/ui/common/common_board_126.png.meta
#	Assets/proto/protocol.bytes
2023-09-01 21:19:26 +08:00
xiekaidong
f0889cb678 首领公开赛 2023-09-01 21:10:25 +08:00
Fang
2877a0418f bug fix 2023-09-01 18:35:56 +08:00
陈希
b67cd42d94 Merge branch 'fang/14天乐' into 'dev_20230905'
新手14天乐

See merge request b6-client/b6-unity!16
2023-09-01 09:46:07 +00:00
Fang
c04ae2e751 review 2023-09-01 17:45:52 +08:00
Fang
9d1d98ddd5 代码调整 2023-09-01 15:59:20 +08:00
Fang
9d6334e76e 新手14天乐 2023-09-01 15:35:31 +08:00
xiekaidong
b9ee339355 界面调整 2023-08-31 20:18:23 +08:00
Fang
332789283b 点击英雄卡面,不显示皮肤fix 2023-08-31 18:10:26 +08:00
Fang
afc6b61916 导入头像资源 2023-08-31 18:05:18 +08:00
xiekaidong
81d7dc4bd0 资源和界面 2023-08-31 17:05:18 +08:00
xiekaidong
cc21b09f91 设置abname,提升版本号 2023-08-30 19:21:13 +08:00
xiekaidong
0b8306ff1b 更新配置 2023-08-30 19:16:24 +08:00
xiekaidong
82b8c6a181 boss_rush 2023-08-30 19:11:51 +08:00
Fang
7d0f23df51 竞技场入口banner修改 2023-08-30 18:13:05 +08:00
Fang
1c4236a20f 竞技场战令spine修改 2023-08-30 17:44:54 +08:00
Fang
667e9dbe11 更换皮肤卡面变化 2023-08-30 17:32:14 +08:00
Fang
71fe08b57c 更表 2023-08-30 17:04:14 +08:00
Fang
cb1331708c 资源导入 2023-08-30 17:02:30 +08:00
xiekaidong
d6046b2e7d Merge branch 'master' into dev_20230919 2023-08-30 09:19:48 +08:00
xiekaidong
b188be5dd4 提升版本号 2023-08-29 21:42:21 +08:00
xiekaidong
f08af571e2 Merge branch 'dev_20230829' 2023-08-29 21:41:35 +08:00
xiekaidong
b3b9e59f4a 优化 2023-08-29 21:32:29 +08:00
xiekaidong
cd1cea12fa bug修复 2023-08-29 21:04:37 +08:00
xiekaidong
27d17254a7 Merge branch 'master' into dev_20230919 2023-08-29 19:41:13 +08:00
xiekaidong
3a690240f9 首领入侵活动界面 2023-08-29 19:03:40 +08:00
xiekaidong
1dbe2391dc 提升版本号 2023-08-29 17:17:25 +08:00
Fang
79f1369068 加载资源优化 2023-08-29 17:11:49 +08:00
xiekaidong
1daeabac42 编译lua 2023-08-29 16:03:47 +08:00
xiekaidong
eb1a197cc0 Merge branch 'master' into dev_20230829
# Conflicts:
#	Assets/lua/app/config/skill_rogue.lua.bytes
#	Assets/lua/app/module/battle/component/battle_unit_comp.lua.bytes
2023-08-29 16:02:44 +08:00
xiekaidong
4e0cd6c8d8 更新资源 2023-08-29 14:57:22 +08:00
xiekaidong
67a46e7d06 增加容错 2023-08-29 14:55:13 +08:00
xiekaidong
f2b6ce6233 资源异常处理 2023-08-29 12:32:13 +08:00
xiekaidong
44d66bb6c2 资源检查 2023-08-29 12:23:18 +08:00
xiekaidong
df29ad47ea 更新配置 2023-08-29 12:22:26 +08:00
xiekaidong
3c50b60ccd 珊瑚特效 2023-08-29 11:27:04 +08:00
xiekaidong
2ac1249b99 更新协议 2023-08-29 11:03:54 +08:00
xiekaidong
a8a49eeb86 网络模块优化 2023-08-29 11:02:11 +08:00
xiekaidong
a6665b8fc3 bug修复 2023-08-28 19:15:19 +08:00
xiekaidong
7722e968e3 逻辑调整 2023-08-28 19:12:19 +08:00
xiekaidong
66bf185bd7 每日任务宝箱动画 2023-08-28 18:56:35 +08:00
xiekaidong
6533c64892 Merge branch 'dev_20230829' of http://git.juzugame.com/b6-client/b6-unity into dev_20230829 2023-08-28 18:36:19 +08:00
xiekaidong
b5c144a98e 显示修复 2023-08-28 18:36:15 +08:00
Fang
ec67afe68b 竞技场入口红点添加段位奖励可领取情况 2023-08-28 18:19:26 +08:00
Fang
c1af1c8dcf 段位奖励第一个档位标签显示fix 2023-08-28 17:51:20 +08:00
Fang
eeae9e8382 段位奖励添加奖励光效 2023-08-28 17:42:13 +08:00
Fang
7f99b9d771 装备礼包fix 2023-08-28 15:26:21 +08:00
xiekaidong
dccabf26e2 bug修复 2023-08-28 15:16:30 +08:00
xiekaidong
ed5e2f1dc7 xlua 2023-08-28 15:07:57 +08:00
xiekaidong
f470bacdbb 调整一下填充和格子效果的逻辑顺序 2023-08-28 14:50:44 +08:00
xiekaidong
5d690de886 封号删除账号 2023-08-28 14:13:04 +08:00
xiekaidong
8bcf0d01e2 封号功能和屏蔽一些网络冗余操作 2023-08-28 14:04:56 +08:00
xiekaidong
c7b4a4a064 bug修复 2023-08-28 11:12:32 +08:00
Fang
efd26331b4 档位奖励进度显示fix 2023-08-28 10:15:37 +08:00
7a34de2a39 Merge branch 'dev_20230829' of http://git.juzugame.com/b6-client/b6-unity into dev_20230829 2023-08-28 09:42:39 +08:00
456deab80a 11 2023-08-28 09:42:26 +08:00
Fang
b460d9d8c5 段位奖励段位图标显示修改 2023-08-25 10:36:35 +08:00
xiekaidong
c180b32e81 动画 2023-08-24 18:29:57 +08:00
xiekaidong
5bffd844c1 Merge branch 'dev_20230829' of http://git.juzugame.com/b6-client/b6-unity into dev_20230829 2023-08-24 18:26:12 +08:00
xiekaidong
0ec05b592c 更改基金开启时间 2023-08-24 18:26:03 +08:00
陈希
ca7f897efe Merge branch 'fang/装备礼包' into 'dev_20230829'
装备升级礼包

See merge request b6-client/b6-unity!15
2023-08-24 10:24:23 +00:00
Fang
2b11c3a6b0 定时器处理 2023-08-24 18:21:22 +08:00
Fang
be98aa91d8 段位奖励展示修改、添加收集标签红点 2023-08-24 18:09:55 +08:00
Fang
6097fc7c7f 装备升级礼包 2023-08-24 17:29:22 +08:00
xiekaidong
8cef52f549 Merge branch 'dev_20230919' into sdk_2 2023-08-24 15:48:02 +08:00
xiekaidong
7b7ee7aa0c 容错 2023-08-24 14:30:53 +08:00
xiekaidong
b3091fbf49 更新ironsource 2023-08-23 20:21:05 +08:00
xiekaidong
d716440747 界面处理 2023-08-23 17:46:57 +08:00
xiekaidong
5051d418c8 Merge branch 'dev_20230829' of http://git.juzugame.com/b6-client/b6-unity into dev_20230829
# Conflicts:
#	Assets/arts/spines/ui/ui_herofund_banner.meta
#	Assets/arts/spines/ui/ui_herofund_banner/ui_herofund_banner.atlas.txt.meta
#	Assets/arts/spines/ui/ui_herofund_banner/ui_herofund_banner.png.meta
#	Assets/arts/spines/ui/ui_herofund_banner/ui_herofund_banner.skel.bytes.meta
#	Assets/arts/spines/ui/ui_herofund_banner/ui_herofund_banner_atlas.asset
#	Assets/arts/spines/ui/ui_herofund_banner/ui_herofund_banner_atlas.asset.meta
#	Assets/arts/spines/ui/ui_herofund_banner/ui_herofund_banner_material.mat
#	Assets/arts/spines/ui/ui_herofund_banner/ui_herofund_banner_material.mat.meta
#	Assets/arts/spines/ui/ui_herofund_banner/ui_herofund_banner_skeletondata.asset
#	Assets/arts/spines/ui/ui_herofund_banner/ui_herofund_banner_skeletondata.asset.meta
#	Assets/arts/spines/ui/ui_main_herofund.meta
#	Assets/arts/spines/ui/ui_main_herofund/ui_main_herofund.atlas.txt.meta
#	Assets/arts/spines/ui/ui_main_herofund/ui_main_herofund.png.meta
#	Assets/arts/spines/ui/ui_main_herofund/ui_main_herofund.skel.bytes
#	Assets/arts/spines/ui/ui_main_herofund/ui_main_herofund.skel.bytes.meta
#	Assets/arts/spines/ui/ui_main_herofund/ui_main_herofund_atlas.asset
#	Assets/arts/spines/ui/ui_main_herofund/ui_main_herofund_atlas.asset.meta
#	Assets/arts/spines/ui/ui_main_herofund/ui_main_herofund_material.mat
#	Assets/arts/spines/ui/ui_main_herofund/ui_main_herofund_material.mat.meta
#	Assets/arts/spines/ui/ui_main_herofund/ui_main_herofund_skeletondata.asset
#	Assets/arts/spines/ui/ui_main_herofund/ui_main_herofund_skeletondata.asset.meta
2023-08-23 17:37:36 +08:00
xiekaidong
1f6c432163 界面调整 2023-08-23 17:37:07 +08:00
Fang
ca460b1b01 通行证banner资源导入 2023-08-23 16:58:52 +08:00
Fang
644a3f5cc3 spine资源导入 2023-08-23 16:48:33 +08:00
陈希
57234a1738 Merge branch 'fang/arena' into 'dev_20230829'
竞技场段位奖励

See merge request b6-client/b6-unity!12
2023-08-23 07:55:51 +00:00
Fang
5444cab3db 1 2023-08-23 15:50:21 +08:00
Fang
7837455596 竞技场段位奖励 2023-08-23 14:41:56 +08:00
xiekaidong
bd50d89651 解锁判定 2023-08-22 18:09:31 +08:00
xiekaidong
5d5606c887 排序 2023-08-22 17:48:18 +08:00
524c4367c2 p0023受击骷髅 2023-08-22 15:52:10 +08:00
Fang
519480c7dd 新增皮肤报错fix 2023-08-22 11:57:00 +08:00
8f2527bb76 亚历山大皮肤 2023-08-21 21:10:44 +08:00
xiekaidong
e4df3deb60 提升版本号 2023-08-21 16:02:56 +08:00
Fang
ad82aba16d 连续快速扫荡显示fix 2023-08-21 14:55:22 +08:00
Fang
20aa364195 连续快速扫荡显示fix 2023-08-21 14:38:25 +08:00
xiekaidong
9b4ab7f785 bug修复 2023-08-21 11:24:57 +08:00
xiekaidong
f3b4bbb154 更新配置 2023-08-21 10:49:03 +08:00
xiekaidong
713c7b8f87 bug修复 2023-08-21 10:33:37 +08:00
xiekaidong
b36941172c 编译lua 2023-08-21 09:48:42 +08:00
xiekaidong
7134e96cc8 Merge branch 'master' into dev_20230829
# Conflicts:
#	Assets/lua/app/common/event_manager.lua.bytes
#	Assets/lua/app/proto/proto_msg_type.lua.bytes
#	Assets/proto/protocol.bytes
2023-08-21 09:47:38 +08:00
xiekaidong
0f64030d8e 报错修复 2023-08-21 09:47:13 +08:00
chenxi
72775fbd50 上报参数 2023-08-18 20:13:47 +08:00
xiekaidong
deae480ef3 诅咒回血被腐败影响 2023-08-18 18:56:09 +08:00
xiekaidong
6441196517 一些描述 2023-08-18 18:36:08 +08:00
xiekaidong
033c2e8d63 英雄基金 2023-08-18 18:10:12 +08:00
xiekaidong
46e7fbc5de Merge branch 'herofund' into dev_20230829 2023-08-18 18:09:25 +08:00
xiekaidong
02481f50b4 英雄基金 2023-08-18 18:08:58 +08:00
xiekaidong
17798bf02e 提升版本号 2023-08-18 15:16:49 +08:00
xiekaidong
1c829259d9 更新多语言 2023-08-18 11:54:24 +08:00
xiekaidong
06f20dfc8e 更新资源 2023-08-18 11:49:01 +08:00
xiekaidong
06797a20de 选技能buf修复 2023-08-18 11:45:05 +08:00
xiekaidong
cd3a75c78f 英雄基金 2023-08-18 11:38:26 +08:00
xiekaidong
3ace779c74 一些优化和容错 2023-08-18 10:56:29 +08:00
Fang
eb6a23021e 编译 2023-08-17 19:09:41 +08:00
xiekaidong
50a2298e84 更新配置 2023-08-17 18:59:24 +08:00
xiekaidong
f8c3dc9bb0 界面和协议 2023-08-17 18:15:39 +08:00
chenxi
01427a9f4c 打包脚本 2023-08-17 16:53:55 +08:00
chenxi
4316bca531 自动设置版本号 2023-08-17 14:15:07 +08:00
Fang
0a5e37baa3 优化夏日活动请求 2023-08-17 14:06:58 +08:00
chenxi
e4446afdec fix bug 2023-08-17 10:04:44 +08:00
xiekaidong
81f6b85711 界面 2023-08-16 18:08:49 +08:00
xiekaidong
60a2c2ee3a 战令一键领取 2023-08-16 17:36:18 +08:00
xiekaidong
b2e11a015e 升版本号 2023-08-16 15:23:38 +08:00
Fang
a6cda907f0 头像、头像框道具解锁优化 2023-08-16 11:52:53 +08:00
xiekaidong
3bcb923eda 层级调整 2023-08-16 11:28:22 +08:00
zhangpengfei
30564f7a52 角色修改 2023-08-16 11:09:44 +08:00
xiekaidong
a192c8660a 更新配置 2023-08-16 11:05:41 +08:00
xiekaidong
6170cf21e1 Merge branch 'dev_20230815' 2023-08-15 21:47:36 +08:00
chenxi
c97d9104b4 白名单 2023-08-15 21:47:12 +08:00
xiekaidong
09e5656e83 修改版本号 2023-08-15 21:45:49 +08:00
xiekaidong
44becf62dd 设置abName 2023-08-15 21:43:21 +08:00
xiekaidong
6a1403596e Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-15 21:41:08 +08:00
xiekaidong
969e7ec6e2 资源检查 2023-08-15 21:41:05 +08:00
chenxi
f845d5c1fd Merge branch 'dev_20230815' of git.juzugame.com:b6-client/b6-unity into dev_20230815 2023-08-15 21:40:45 +08:00
chenxi
abf3d6f3aa 修改韩语版的logo 2023-08-15 21:40:36 +08:00
xiekaidong
b8f7a7a783 更新配置 2023-08-15 21:39:40 +08:00
Fang
f1d34124b7 审核处理 2023-08-15 21:25:23 +08:00
2ee3df25e9 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-15 21:15:40 +08:00
feb63e9933 11111 2023-08-15 21:15:31 +08:00
Fang
16d8c0e858 夏日活动上报修改 2023-08-15 20:40:46 +08:00
Fang
1e7440d170 夏日活动上报 2023-08-15 20:32:37 +08:00
16143ea795 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-15 20:31:01 +08:00
bb7ceff1e9 11 2023-08-15 20:30:52 +08:00
xiekaidong
3f7d7dfb21 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-15 20:30:37 +08:00
xiekaidong
a645eb5c63 层级调整 2023-08-15 20:30:21 +08:00
fac1160a61 11111 2023-08-15 20:30:08 +08:00
xiekaidong
6434cc2f8b 资源检查 2023-08-15 20:26:29 +08:00
xiekaidong
3527846c69 资源检查 2023-08-15 19:51:06 +08:00
xiekaidong
c597e71285 优化 2023-08-15 19:41:11 +08:00
xiekaidong
4b49a99d8f 容错和容错 2023-08-15 19:34:30 +08:00
xiekaidong
b8437cd261 特效层级修改 2023-08-15 19:28:00 +08:00
bb7af8c9f8 1111111 2023-08-15 19:01:39 +08:00
60dc7fdff5 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-15 18:56:39 +08:00
972202a6d1 11111111 2023-08-15 18:56:30 +08:00
xiekaidong
fe2f61985c Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-15 18:43:05 +08:00
xiekaidong
6d480fc8b7 更新配置 2023-08-15 18:43:01 +08:00
e6227ea86f 0034skil增长 2023-08-15 17:44:47 +08:00
xiekaidong
db2c20f2f1 适配 2023-08-15 17:42:22 +08:00
xiekaidong
2ac0456b2f 复活判定 2023-08-15 17:33:50 +08:00
xiekaidong
a6641a707b 音效 2023-08-15 17:13:47 +08:00
xiekaidong
1769d7a941 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-15 16:29:57 +08:00
xiekaidong
e51d67d317 ios本地化 2023-08-15 16:29:53 +08:00
Fang
3b4a03cde8 多语言遮挡处理 2023-08-15 16:17:49 +08:00
ac46a76f69 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-15 15:53:14 +08:00
037d45092f 111111 2023-08-15 15:53:05 +08:00
Fang
be4c77474e 显示fix 2023-08-15 15:35:02 +08:00
Fang
acf5e29ae1 bug fix 2023-08-15 15:08:35 +08:00
xiekaidong
32a5d23a0c 替换资源 2023-08-15 15:00:48 +08:00
xiekaidong
4d1635dc3b 背景特效 2023-08-15 14:59:48 +08:00
Fang
335ab77238 竞技场皮肤属性完善 2023-08-15 12:20:55 +08:00
xiekaidong
c438b6fbd3 战斗任务统计 2023-08-15 12:15:43 +08:00
xiekaidong
ceb3cbfdbc 音效 2023-08-15 12:03:38 +08:00
xiekaidong
b7caf1dbf8 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-15 11:54:33 +08:00
xiekaidong
35e781df19 替换 2023-08-15 11:54:30 +08:00
xiekaidong
c4d52097e8 bug修复 2023-08-15 11:52:02 +08:00
chenxi
5e22aa1c23 Merge branch 'dev_20230815' of git.juzugame.com:b6-client/b6-unity into dev_20230815 2023-08-15 11:47:16 +08:00
chenxi
ac475adb24 mipmap 2023-08-15 11:47:09 +08:00
xiekaidong
2194495db0 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-15 11:44:18 +08:00
xiekaidong
b71d37f58b 打包 2023-08-15 11:44:15 +08:00
Fang
ea1d84b065 编译 2023-08-15 11:37:54 +08:00
edad5d3459 1111 2023-08-15 11:33:51 +08:00
7255a8648d 1111111 2023-08-15 11:24:42 +08:00
4fad3e682e Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-15 11:15:38 +08:00
fa3a1aa9f6 11111111 2023-08-15 11:15:28 +08:00
ecefac269c 0033 2023-08-15 11:06:34 +08:00
1973964d4f p0033 2023-08-15 10:55:27 +08:00
Fang
ea746f2851 导入武器图片 2023-08-15 10:41:35 +08:00
Fang
212c93632b 活动等级达到最大报错fix 2023-08-15 10:28:42 +08:00
chenxi
afdf13a0a2 Merge branch 'dev_20230815' of git.juzugame.com:b6-client/b6-unity into dev_20230815 2023-08-15 09:41:20 +08:00
chenxi
0912071578 安卓依赖 2023-08-15 09:41:11 +08:00
xiekaidong
9cdeac081d 编译lua 2023-08-15 09:38:22 +08:00
xiekaidong
1729539f40 Merge branch 'master' into dev_20230815
# Conflicts:
#	Assets/lua/app/module/battle/controller/battle_base_controller.lua.bytes
#	Assets/lua/app/module/battle/helper/battle_snapshot_helper.lua.bytes
2023-08-15 09:35:50 +08:00
xiekaidong
200ebe808b 技能位置 2023-08-15 09:22:18 +08:00
xiekaidong
3254fd04d6 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-15 09:18:00 +08:00
xiekaidong
1290a24e06 复制文件目录 2023-08-15 09:17:57 +08:00
3af536d18d Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-14 22:21:20 +08:00
40bb269cd4 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-14 22:21:01 +08:00
chenxi
e7a1fd2b0c Merge branch 'dev_20230815' of git.juzugame.com:b6-client/b6-unity into dev_20230815 2023-08-14 22:21:00 +08:00
chenxi
8ddf543092 资源 2023-08-14 22:20:51 +08:00
e70c150a77 11111 2023-08-14 22:20:46 +08:00
xiekaidong
e98a5855f2 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-14 22:13:50 +08:00
xiekaidong
f8ad085f8b 代码调整 2023-08-14 22:13:46 +08:00
c49c53bd29 11111 2023-08-14 22:08:59 +08:00
72d11545e3 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-14 22:05:30 +08:00
186684915b 11111111 2023-08-14 22:05:22 +08:00
xiekaidong
b1ecbc74fa 多语言 2023-08-14 21:58:25 +08:00
961e69e534 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-14 21:33:27 +08:00
3567e19797 11111111 2023-08-14 21:33:17 +08:00
chenxi
94520452eb sdk设置 2023-08-14 21:20:51 +08:00
chenxi
82bfdfc9e5 Merge branch 'dev_20230815' of git.juzugame.com:b6-client/b6-unity into dev_20230815
# Conflicts:
#	Assets/arts/sounds/sfx/battle/140020151.wav.meta
#	Assets/arts/sounds/sfx/battle/14003201.wav.meta
#	Assets/arts/sounds/sfx/battle/3400321.wav.meta
2023-08-14 21:10:27 +08:00
xiekaidong
72ae396c7c 更新资源 2023-08-14 21:05:53 +08:00
chenxi
5f9930086e 新资源 2023-08-14 21:05:37 +08:00
xiekaidong
26bfed993b 音效 2023-08-14 21:04:17 +08:00
chenxi
349c36021f 屏蔽ironsource ios 部分 2023-08-14 20:44:28 +08:00
chenxi
b37d58fc29 xlua 2023-08-14 20:39:48 +08:00
chenxi
957e5ac9ad xlua 2023-08-14 20:36:29 +08:00
chenxi
cfac263d3a Merge branch 'dev_20230815' of git.juzugame.com:b6-client/b6-unity into dev_20230815 2023-08-14 19:59:07 +08:00
chenxi
c78cea4045 先去掉Moloco 2023-08-14 19:59:01 +08:00
chenxi
5ab8615d87 先去掉Moloco 2023-08-14 19:58:35 +08:00
Fang
f788462596 皮肤道具点开界面 2023-08-14 19:35:04 +08:00
chenxi
7347201f23 Merge branch 'dev_20230815' of git.juzugame.com:b6-client/b6-unity into dev_20230815 2023-08-14 19:12:34 +08:00
chenxi
3feebb0d9d xlua 2023-08-14 19:12:19 +08:00
Fang
662fd60a54 报错fix 2023-08-14 18:40:53 +08:00
Fang
566ac2d369 容错、导表 2023-08-14 18:33:10 +08:00
zhangpengfei
835e3a16bd 角色修改 2023-08-14 17:52:24 +08:00
Fang
ac48fb604e 编译 2023-08-14 17:49:40 +08:00
xiekaidong
67ce4b8a54 资源 2023-08-14 17:11:32 +08:00
xiekaidong
6613968878 还原刘海屏 2023-08-14 17:08:25 +08:00
xiekaidong
9641889e5d 重生处理 2023-08-14 16:29:01 +08:00
chenxi
f8677b9da5 Merge branch 'dev_20230815' of git.juzugame.com:b6-client/b6-unity into dev_20230815 2023-08-14 16:14:34 +08:00
chenxi
3a853e7771 xlua 2023-08-14 16:14:25 +08:00
Fang
6e9b10e7a3 容错处理 2023-08-14 16:13:42 +08:00
0a26dee331 p0023 2023-08-14 15:07:14 +08:00
5427520356 p0023,29 2023-08-14 15:03:03 +08:00
xiekaidong
3f24e53428 皮肤音效 2023-08-14 14:56:56 +08:00
xiekaidong
cc6508dc20 金猪界面 2023-08-14 14:54:21 +08:00
xiekaidong
cbce761a98 竞技场弹出礼包界面 2023-08-14 14:52:58 +08:00
xiekaidong
93787e2194 初始化刘海屏 2023-08-14 14:46:02 +08:00
xiekaidong
e8186b9d29 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-14 14:45:13 +08:00
xiekaidong
65a23a6f5e xlua生成 2023-08-14 14:44:41 +08:00
Fang
0531830c75 配置更新 2023-08-14 14:44:04 +08:00
xiekaidong
4f66328eee 刘海屏 2023-08-14 13:13:10 +08:00
xiekaidong
505a3bcb79 app多语言 2023-08-14 13:02:23 +08:00
chenxi
9f476e99e4 Merge branch 'dev_20230815' of git.juzugame.com:b6-client/b6-unity into dev_20230815 2023-08-14 11:32:33 +08:00
chenxi
11327cb481 ad quality sdk 2023-08-14 11:32:24 +08:00
Fang
a4c6fb8e38 英雄生命值显示fix、资源替换 2023-08-14 11:15:06 +08:00
chenxi
1dacc15828 Merge branch 'dev_20230815' of git.juzugame.com:b6-client/b6-unity into dev_20230815 2023-08-14 11:00:05 +08:00
chenxi
ff9e413fc6 sdk 2023-08-14 10:59:59 +08:00
zhangpengfei
f0cae4c6ab 角色修改 2023-08-14 10:17:42 +08:00
Fang
7dd9c5e88a 夏日活动战令购买spine动画调换 2023-08-14 09:58:52 +08:00
Fang
0aba4ec004 更表 2023-08-14 09:50:16 +08:00
chenxi
b6bf5df071 增加一个SDK 2023-08-11 23:29:39 +08:00
chenxi
399374dc6c 广告sdk 2023-08-11 23:06:17 +08:00
chenxi
ad9bb05f62 Merge branch 'dev_20230815' of git.juzugame.com:b6-client/b6-unity into dev_20230815 2023-08-11 19:21:25 +08:00
chenxi
f55b2a3aa7 安卓sdk 2023-08-11 19:21:01 +08:00
a63efe7ae5 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-11 18:53:42 +08:00
68f8fb28f4 111 2023-08-11 18:53:29 +08:00
c4c6a1eba9 0033 2023-08-11 18:39:56 +08:00
Fang
5f53448c75 新加颜色生命值加成 2023-08-11 18:16:16 +08:00
xiekaidong
353b6186a3 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-11 17:50:34 +08:00
xiekaidong
80fd0f2e80 bug修复 2023-08-11 17:50:30 +08:00
77d1060ba4 0034 2023-08-11 17:47:33 +08:00
b6ada80d8a Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-11 17:45:40 +08:00
28d7ce9184 1111111 2023-08-11 17:45:31 +08:00
zhangpengfei
14e182367c Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-11 17:45:19 +08:00
zhangpengfei
e0fa39ac70 角色修改 2023-08-11 17:45:10 +08:00
d8c10917b6 0033 2023-08-11 17:41:38 +08:00
zhangpengfei
a814fa6f72 角色修改 2023-08-11 17:33:24 +08:00
zhangpengfei
4cebf61be2 角色上传 2023-08-11 17:29:14 +08:00
85ad80c339 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-11 17:17:22 +08:00
ca654b45b9 p0015小红帽皮肤-p0035 2023-08-11 17:17:19 +08:00
Fang
d8c5fb61a3 资源替换 2023-08-11 17:02:46 +08:00
43526eeccb Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-11 16:47:49 +08:00
a99fce750e 夏日熊猫 2023-08-11 16:47:40 +08:00
Fang
78fac50fc5 装备副本界面添加礼包入口 2023-08-11 16:35:21 +08:00
65e820fa50 p0028 2023-08-11 16:15:42 +08:00
Fang
30bf431636 编译 2023-08-11 16:03:20 +08:00
Fang
302452e76d 竞技场宝箱弹出优化、bugfix 2023-08-11 15:50:38 +08:00
22baebeab0 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-11 15:44:39 +08:00
44228b01fe 11111 2023-08-11 15:44:30 +08:00
xiekaidong
187eda1f35 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815
# Conflicts:
#	Assets/lua/app/module/battle/controller/battle_base_controller.lua.bytes
2023-08-11 15:18:03 +08:00
xiekaidong
62907b1a83 边缘障碍物逻辑优化 2023-08-11 15:17:49 +08:00
Fang
d88a18d48b 活动礼包弹出逻辑补充 2023-08-11 15:09:15 +08:00
287361e39a Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-11 14:53:09 +08:00
834d12bda4 1111 2023-08-11 14:53:00 +08:00
Fang
0fda6326b4 编译 2023-08-11 14:28:01 +08:00
e9bd6c070d Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-11 12:09:53 +08:00
04d54fe957 木兰 2023-08-11 12:09:42 +08:00
zhangpengfei
9ab3370abd 角色修改 2023-08-11 12:08:18 +08:00
陈希
51b8d22f79 Merge branch 'fang/夏日活动' into 'dev_20230815'
夏日活动功能

See merge request b6-client/b6-unity!11
2023-08-11 04:06:00 +00:00
Fang
51891b4d27 夏日活动功能 2023-08-11 12:00:11 +08:00
Fang
bdcfb12f52 导入素材 2023-08-11 12:00:02 +08:00
xiekaidong
5f858b5d5b Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-11 11:25:45 +08:00
xiekaidong
d93593b5fb 优化木棍障碍物 2023-08-11 11:25:22 +08:00
7e235b92ae Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-11 11:18:17 +08:00
4c52c1a18d 1111111 2023-08-11 11:18:08 +08:00
xiekaidong
c9efe2357e 更新pb 2023-08-11 10:59:18 +08:00
xiekaidong
f49eaaae84 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-11 10:41:49 +08:00
xiekaidong
425bfe2fd7 更新配置 2023-08-11 10:41:28 +08:00
80392308a9 111111111 2023-08-11 10:29:23 +08:00
xiekaidong
8031fd83f8 bug修复 2023-08-11 10:05:57 +08:00
xiekaidong
326f35d983 替换资源 2023-08-10 19:52:31 +08:00
xiekaidong
b08ab375cc bug修复 2023-08-10 19:29:42 +08:00
xiekaidong
196e5d881f Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-10 17:57:52 +08:00
f381de67ae 英雄,皮肤 2023-08-10 17:03:20 +08:00
Fang
1aef3a423a 皮肤属性增加生命加成显示 2023-08-10 16:32:10 +08:00
xiekaidong
7c3699c11d 刘海屏 2023-08-10 15:57:01 +08:00
xiekaidong
4409c91b2b 处理刘海屏 2023-08-10 15:31:11 +08:00
xiekaidong
4270fd5dde Merge branch 'app_name' into dev_20230815 2023-08-10 14:36:20 +08:00
xiekaidong
77788ca22e bug修复 2023-08-10 11:45:35 +08:00
xiekaidong
223e735275 更新pb 2023-08-10 11:02:45 +08:00
xiekaidong
53e9da7a4f 皮肤技能表现 2023-08-10 10:49:22 +08:00
7f4bed0604 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-10 09:43:00 +08:00
ccc6048c4b boss hit 2023-08-10 09:42:45 +08:00
xiekaidong
089558c932 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-10 09:41:55 +08:00
xiekaidong
5c1fa9be63 更新配置 2023-08-10 09:41:33 +08:00
xiekaidong
977b3c8c91 Merge branch 'master' into dev_20230815
# Conflicts:
#	Assets/lua/app/config/arena_bounty_level.lua.bytes
#	Assets/lua/app/config/arena_rank.lua.bytes
#	Assets/lua/app/config/avatar_frame.lua.bytes
#	Assets/lua/app/config/chapter.lua.bytes
#	Assets/lua/app/config/chapter_board.lua.bytes
#	Assets/lua/app/config/grid_type.lua.bytes
#	Assets/lua/app/config/item.lua.bytes
#	Assets/lua/app/config/monster_chapter.lua.bytes
#	Assets/lua/app/config/monster_daily_challenge.lua.bytes
#	Assets/lua/app/config/monster_dungeon_armor.lua.bytes
#	Assets/lua/app/config/strings/cn/avatar.lua.bytes
#	Assets/lua/app/config/strings/cn/avatar_frame.lua.bytes
#	Assets/lua/app/config/strings/cn/skill_rogue.lua.bytes
#	Assets/lua/app/config/strings/en/avatar.lua.bytes
#	Assets/lua/app/config/strings/en/avatar_frame.lua.bytes
#	Assets/lua/app/config/strings/en/item.lua.bytes
#	Assets/lua/app/config/strings/en/skill_rogue.lua.bytes
#	Assets/lua/app/config/strings/es/avatar.lua.bytes
#	Assets/lua/app/config/strings/es/avatar_frame.lua.bytes
#	Assets/lua/app/config/strings/es/item.lua.bytes
#	Assets/lua/app/config/strings/es/skill_rogue.lua.bytes
#	Assets/lua/app/config/strings/id/avatar.lua.bytes
#	Assets/lua/app/config/strings/id/avatar_frame.lua.bytes
#	Assets/lua/app/config/strings/id/item.lua.bytes
#	Assets/lua/app/config/strings/id/skill_rogue.lua.bytes
#	Assets/lua/app/config/strings/ja/avatar.lua.bytes
#	Assets/lua/app/config/strings/ja/avatar_frame.lua.bytes
#	Assets/lua/app/config/strings/ja/item.lua.bytes
#	Assets/lua/app/config/strings/ja/skill_rogue.lua.bytes
#	Assets/lua/app/config/strings/ko/avatar.lua.bytes
#	Assets/lua/app/config/strings/ko/avatar_frame.lua.bytes
#	Assets/lua/app/config/strings/ko/item.lua.bytes
#	Assets/lua/app/config/strings/ko/skill_rogue.lua.bytes
#	Assets/lua/app/config/strings/pt/avatar.lua.bytes
#	Assets/lua/app/config/strings/pt/avatar_frame.lua.bytes
#	Assets/lua/app/config/strings/pt/item.lua.bytes
#	Assets/lua/app/config/strings/pt/skill_rogue.lua.bytes
#	Assets/lua/app/config/strings/th/avatar.lua.bytes
#	Assets/lua/app/config/strings/th/avatar_frame.lua.bytes
#	Assets/lua/app/config/strings/th/item.lua.bytes
#	Assets/lua/app/config/strings/th/skill_rogue.lua.bytes
#	Assets/lua/app/config/strings/vi/avatar.lua.bytes
#	Assets/lua/app/config/strings/vi/avatar_frame.lua.bytes
#	Assets/lua/app/config/strings/vi/item.lua.bytes
#	Assets/lua/app/config/strings/vi/skill_rogue.lua.bytes
#	Assets/lua/app/config/strings/zh/avatar.lua.bytes
#	Assets/lua/app/config/strings/zh/avatar_frame.lua.bytes
#	Assets/lua/app/config/strings/zh/item.lua.bytes
#	Assets/lua/app/config/strings/zh/skill_rogue.lua.bytes
#	Assets/lua/app/config/summon.lua.bytes
#	Assets/lua/app/module/battle/component/battle_unit_comp.lua.bytes
#	Assets/lua/app/module/battle/helper/battle_snapshot_helper.lua.bytes
#	Assets/lua/app/module/battle/team/battle_team.lua.bytes
#	Assets/lua/app/module/shop/shop_manager.lua.bytes
2023-08-10 09:38:07 +08:00
zhangpengfei
b0cf3b9798 小怪hit帧修改 2023-08-10 09:34:30 +08:00
chenxi
e38ce4e68e 接入Moloco广告适配器 2023-08-09 22:10:47 +08:00
Fang
704fc389cb 替图、编译 2023-08-09 16:48:39 +08:00
xiekaidong
b6acc8beee 更新资源 2023-08-09 16:07:36 +08:00
陈希
6c75146c10 Merge branch 'fang/皮肤' into 'dev_20230815'
皮肤功能

See merge request b6-client/b6-unity!10
2023-08-09 07:28:11 +00:00
xiekaidong
fcb9d940b5 更新资源 2023-08-09 15:10:54 +08:00
Fang
9c9cde6a89 皮肤功能 2023-08-09 14:15:12 +08:00
xiekaidong
5706a029be 安卓app名称 2023-08-09 13:09:19 +08:00
xiekaidong
519bda505a 金猪 2023-08-09 10:21:52 +08:00
xiekaidong
6f1d287ee4 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-09 09:42:11 +08:00
xiekaidong
a1a34631f1 上传资源 2023-08-09 09:42:07 +08:00
zhangpengfei
43c31f6e12 角色动画修改 2023-08-09 09:10:35 +08:00
1a8a58c25c Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-08 20:08:15 +08:00
f55e845856 新英雄 2023-08-08 20:08:06 +08:00
zhangpengfei
446a83490d 小怪上传 2023-08-08 20:07:34 +08:00
94acba74c4 新增BOSS 2023-08-08 19:54:23 +08:00
xiekaidong
4d8561a55f 更新资源 2023-08-08 17:59:29 +08:00
xiekaidong
42570059b1 Merge branch 'dev_20230815' of http://git.juzugame.com/b6-client/b6-unity into dev_20230815 2023-08-08 16:39:15 +08:00
xiekaidong
ce7ad3cb8c 新buff和新机制 2023-08-08 16:39:03 +08:00
Fang
d145279d29 导入icon资源 2023-08-08 16:28:23 +08:00
xiekaidong
5caf199eb1 Merge branch 'dev_20230815' into battle 2023-08-08 16:00:24 +08:00
xiekaidong
433ec88ba1 编译lua 2023-08-08 16:00:08 +08:00
xiekaidong
3b61c03934 Merge branch 'dev_20230809' into dev_20230815
# Conflicts:
#	Assets/lua/app/common/local_data.lua.bytes
#	Assets/lua/app/config/act_gift.lua.bytes
#	Assets/lua/app/config/arena_rank.lua.bytes
#	Assets/lua/app/config/chapter_board.lua.bytes
#	Assets/lua/app/config/const.lua.bytes
#	Assets/lua/app/config/item.lua.bytes
#	Assets/lua/app/config/skill.lua.bytes
#	Assets/lua/app/config/skill_rogue.lua.bytes
#	Assets/lua/app/config/strings/cn/buff.lua.bytes
#	Assets/lua/app/config/strings/cn/global.lua.bytes
#	Assets/lua/app/config/strings/cn/item.lua.bytes
#	Assets/lua/app/config/strings/de/item.lua.bytes
#	Assets/lua/app/config/strings/en/item.lua.bytes
#	Assets/lua/app/config/strings/es/item.lua.bytes
#	Assets/lua/app/config/strings/fr/item.lua.bytes
#	Assets/lua/app/config/strings/id/item.lua.bytes
#	Assets/lua/app/config/strings/ja/item.lua.bytes
#	Assets/lua/app/config/strings/ja/skill.lua.bytes
#	Assets/lua/app/config/strings/ko/item.lua.bytes
#	Assets/lua/app/config/strings/pt/item.lua.bytes
#	Assets/lua/app/config/strings/ru/item.lua.bytes
#	Assets/lua/app/config/strings/th/item.lua.bytes
#	Assets/lua/app/config/strings/vi/item.lua.bytes
#	Assets/lua/app/config/strings/zh/item.lua.bytes
#	Assets/lua/app/config/strings/zh/skill.lua.bytes
#	Assets/lua/app/global/global_func.lua.bytes
#	Assets/lua/app/module/arena/arena_manager.lua.bytes
#	Assets/lua/app/module/battle/controller/battle_base_controller.lua.bytes
#	Assets/lua/app/module/battle/helper/battle_snapshot_helper.lua.bytes
#	Assets/lua/app/module/equip/equip_manager.lua.bytes
#	Assets/lua/app/module/shop/shop_manager.lua.bytes
#	Assets/lua/app/proto/proto_msg_type.lua.bytes
#	Assets/lua/app/ui/battle/battle_base_ui.lua.bytes
#	Assets/lua/app/ui/main_city/component/main_comp.lua.bytes
#	Assets/lua/app/ui/ui_manager.lua.bytes
#	Assets/proto/protocol.bytes
2023-08-08 15:59:22 +08:00
xiekaidong
ee6e367889 上传背景 2023-08-08 11:26:54 +08:00
xiekaidong
387492bd3b 显示调整 2023-08-07 17:21:55 +08:00
xiekaidong
3b182e56c5 英雄竞技场段位解锁 2023-08-03 18:08:02 +08:00
xiekaidong
cd5f588a66 统一接口,金币不足提示弹窗询问 2023-08-03 14:54:55 +08:00
xiekaidong
32e93ec980 木棍边缘障碍物 2023-08-02 18:10:43 +08:00
xiekaidong
1bbe630e25 Merge branch 'mugun' into dev_20230815 2023-08-02 18:08:39 +08:00
xiekaidong
a199c25d16 木棍边缘障碍物 2023-08-02 18:07:58 +08:00
zhangpengfei
1135253224 角色修改 2023-08-02 09:15:34 +08:00
zhangpengfei
0812b11677 新角色上传 2023-08-01 21:02:03 +08:00
zhangpengfei
42d2c1e689 角色动画修改 2023-07-31 17:48:17 +08:00
zhangpengfei
d5b26101ff 角色动画更新 2023-07-31 17:33:59 +08:00
zhangpengfei
7359fed73e 新角色上传 2023-07-31 16:54:26 +08:00
6036 changed files with 6733359 additions and 9174 deletions

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 05925ee3a430995468976e5bed989ec1 guid: 0c41a7273e266a0468c52d3a52652dbd
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}

View File

@ -0,0 +1,195 @@
using System.Collections.Generic;
using System.IO;
using UnityEditor;
using UnityEngine;
namespace BFEditor.Build
{
public class CompareAssetBundleWindow : EditorWindow
{
private string newestABPath = "";
private string lastABPath = "";
public bool IsAndroid = true;
private List<string> ABList = new List<string>();
Vector2 resultScrollPos;
public CompareAssetBundleWindow()
{
titleContent = new GUIContent("AssetBundle对比");
}
private void OnEnable()
{
GetNewestABPath();
}
void OnGUI()
{
GUILayout.Space(18);
GUILayout.BeginHorizontal();
GUILayout.Label("当前版本AB路径");
GUILayout.TextField(newestABPath, GUILayout.Width(600));
if (GUILayout.Button("选择", GUILayout.Width(80)))
{
string openPath = EditorUtility.OpenFolderPanel("select ab path", newestABPath, "");
if (openPath.CompareTo("") != 0){
newestABPath = openPath;
}
}
GUILayout.EndHorizontal();
GUILayout.Space(10);
GUILayout.BeginHorizontal();
GUILayout.Label("上个版本AB路径");
GUILayout.TextField(lastABPath, GUILayout.Width(600));
if (GUILayout.Button("选择", GUILayout.Width(80)))
{
string openPath = EditorUtility.OpenFolderPanel("select ab path", lastABPath, "");
if (openPath.CompareTo("") != 0){
lastABPath = openPath;
}
}
GUILayout.EndHorizontal();
GUILayout.Space(10);
GUILayout.BeginHorizontal();
GUILayout.Space(150);
if (GUILayout.Button("对比", GUILayout.Width(200), GUILayout.Height(40)))
{
CheckMD5AndAssetHash();
}
GUILayout.Space(100);
if (GUILayout.Button("使用上个版本的AB修复", GUILayout.Width(200), GUILayout.Height(40)))
{
UseLastABFix();
}
GUILayout.EndHorizontal();
GUILayout.Space(30);
DrawResult();
}
private void DrawResult()
{
resultScrollPos = GUILayout.BeginScrollView(resultScrollPos, GUILayout.Width(800), GUILayout.Height(620));
for (int i = ABList.Count - 1; i >= 0; i--)
{
var path = ABList[i];
GUILayout.BeginHorizontal();
GUILayout.Space(20);
EditorGUILayout.TextField(path);
GUILayout.Space(10);
GUILayout.EndHorizontal();
}
GUILayout.EndScrollView();
}
private void CheckMD5AndAssetHash()
{
if (string.IsNullOrEmpty(newestABPath))
{
return;
}
if (string.IsNullOrEmpty(lastABPath))
{
return;
}
ABList.Clear();
var manifestPath = System.IO.Path.Combine(newestABPath, "asset_bundle_manifest.ab");
var manifestAB = AssetBundle.LoadFromFile(manifestPath);
var Manifest = manifestAB.LoadAsset<AssetBundleManifest>("AssetBundleManifest");
manifestAB.Unload(false);
var lastManifestPath = System.IO.Path.Combine(lastABPath, "asset_bundle_manifest.ab");
var lastManifestAB = AssetBundle.LoadFromFile(lastManifestPath);
var lastManifest = lastManifestAB.LoadAsset<AssetBundleManifest>("AssetBundleManifest");
lastManifestAB.Unload(false);
var allAB = Manifest.GetAllAssetBundles();
foreach(var path in allAB)
{
if (path.Contains("ab_config.bytes") || path.Contains("asset_bundle_manifest.ab"))
{
continue;
}
var fullPathA = Path.Combine(newestABPath, path);
var fullPathB = Path.Combine(lastABPath, path);
if (File.Exists(fullPathB) && BF.GameLaunchUtils.GetFileMD5(fullPathA).CompareTo(BF.GameLaunchUtils.GetFileMD5(fullPathB)) != 0)
{
if (Manifest.GetAssetBundleHash(path) == lastManifest.GetAssetBundleHash(path))
{
// md5 不一致但是AssetHash一致的情况
ABList.Add(path);
}
}
}
}
private void UseLastABFix()
{
if (string.IsNullOrEmpty(newestABPath))
{
return;
}
if (string.IsNullOrEmpty(lastABPath))
{
return;
}
if (ABList.Count == 0)
{
return;
}
foreach(var path in ABList)
{
var fullPathA = Path.Combine(newestABPath, path);
var fullPathB = Path.Combine(lastABPath, path);
File.Copy(fullPathB, fullPathA, true);
}
var version = newestABPath.Substring(newestABPath.Replace("\\", "/").LastIndexOf("/") + 1);
AssetBundleUtils.RegenerateABConfigMd5(newestABPath, version);
ABList.Clear();
}
public static void ShowWindow()
{
var window = GetWindow<CompareAssetBundleWindow>();
window.Show();
}
private void GetNewestABPath()
{
var bundleCachePath = IsAndroid ? Application.dataPath + "/../HistoryAssetBundles" : Application.dataPath + "/../HistoryAssetBundles/IOS";
var dirInfo = new DirectoryInfo(bundleCachePath);
var dirs = dirInfo.GetDirectories();
if (dirs.Length == 0)
{
newestABPath = "";
lastABPath = "";
}
if (dirs.Length == 1)
{
newestABPath = dirs[0].FullName;
lastABPath = "";
}
var hightestIndex = 0;
var secondIndex = 0;
for (var i = 1; i < dirs.Length; i++)
{
if (dirs[i].FullName.CompareTo(dirs[hightestIndex].FullName) > 0)
{
secondIndex = hightestIndex;
hightestIndex = i;
}
}
newestABPath = dirs[hightestIndex].FullName;
if (hightestIndex > 0)
{
lastABPath = dirs[secondIndex].FullName;
}
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: ea05efeb3467b0947b735c8fe281cb8c
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -192,10 +192,34 @@ namespace BFEditor.Build
} }
} }
[MenuItem("打包工具/AssetBundles/对比上一个版本AB Android", priority = 207)]
static void CompareLastVersionABAndroid()
{
var window = (CompareAssetBundleWindow)EditorWindow.GetWindowWithRect(typeof(CompareAssetBundleWindow),
new Rect(Screen.width / 2, Screen.height / 2, 800, 800), true);
window.IsAndroid = true;
window.Show();
}
[MenuItem("打包工具/AssetBundles/对比上一个版本AB IOS", priority = 208)]
static void CompareLastVersionABIOS()
{
var window = (CompareAssetBundleWindow)EditorWindow.GetWindowWithRect(typeof(CompareAssetBundleWindow),
new Rect(Screen.width / 2, Screen.height / 2, 800, 800), true);
window.IsAndroid = false;
window.Show();
}
[MenuItem("打包工具/打包窗口", priority = 301)] [MenuItem("打包工具/打包窗口", priority = 301)]
static void ShowBuildWindow() static void ShowBuildWindow()
{ {
BuildProjectWindow.ShowWindow(); BuildProjectWindow.ShowWindow();
} }
[MenuItem("打包工具/Android转换为AAB工程", priority = 401)]
static void ConvertAndroidStudioToAAB()
{
BuildAndroidUtils.ConvertToAAB();
}
} }
} }

View File

@ -13,6 +13,8 @@ namespace BFEditor.Build
public class BuildProjectWindow : EditorWindow public class BuildProjectWindow : EditorWindow
{ {
private static int versionCode = 18;
private static string versionName = "1.6.5";
BFPlatformOptions platform = BFPlatformOptions.AndroidDev; BFPlatformOptions platform = BFPlatformOptions.AndroidDev;
const string ANDROID_DEV_PACKAGE_NAME = "com.juzu.b6.dev.android"; const string ANDROID_DEV_PACKAGE_NAME = "com.juzu.b6.dev.android";
const string ANDROID_RELEASE_PACKAGE_NAME = "com.juzu.b6.release.android"; const string ANDROID_RELEASE_PACKAGE_NAME = "com.juzu.b6.release.android";
@ -34,7 +36,7 @@ namespace BFEditor.Build
platform = (BFPlatformOptions)EditorGUILayout.EnumPopup("", platform); platform = (BFPlatformOptions)EditorGUILayout.EnumPopup("", platform);
EditorGUILayout.Space(); EditorGUILayout.Space();
EditorGUILayout.LabelField("版本: 0.1.0"); EditorGUILayout.LabelField("版本: " + versionName);
EditorGUILayout.Space(); EditorGUILayout.Space();
string packageName; string packageName;
@ -70,7 +72,8 @@ namespace BFEditor.Build
if (GUILayout.Button("一键打包")) if (GUILayout.Button("一键打包"))
{ {
var buildInfo = new BuildInfo(); var buildInfo = new BuildInfo();
buildInfo.version = "0.1.0"; buildInfo.version = versionName;
buildInfo.version_code = versionCode;
buildInfo.mode = mode; buildInfo.mode = mode;
buildInfo.bundleName = packageName; buildInfo.bundleName = packageName;
buildInfo.skipVersion = skipVersion; buildInfo.skipVersion = skipVersion;

View File

@ -3,6 +3,7 @@ using UnityEditor;
using System.IO; using System.IO;
using UnityEditor.Build.Reporting; using UnityEditor.Build.Reporting;
using System.Text.RegularExpressions; using System.Text.RegularExpressions;
using System.Collections.Generic;
using System; using System;
using System.Threading; using System.Threading;
@ -29,8 +30,14 @@ namespace BFEditor.Build
static string GoogleCommonProjectPath = Application.dataPath + "/../BFVersions/android/google_common"; static string GoogleCommonProjectPath = Application.dataPath + "/../BFVersions/android/google_common";
static string GPAsProjectPath = Application.dataPath + "/../BFVersions/android/ub-gp"; // gp删档测试渠道 static string GPAsProjectPath = Application.dataPath + "/../BFVersions/android/ub-gp"; // gp删档测试渠道
static string GPOfficialAsProjectPath = Application.dataPath + "/../BFVersions/android/ub-google"; // gp正式渠道 static string GPOfficialAsProjectPath = Application.dataPath + "/../BFVersions/android/ub-google"; // gp正式渠道
static string PublishAsProjectPath = Application.dataPath + "/../BFVersions/android/publish_release";
static string SignShellPath = Application.dataPath + "/../BFFiles/androidkey"; static string SignShellPath = Application.dataPath + "/../BFFiles/androidkey";
static string GpAlginShellPath = Application.dataPath + "/../BFFiles/androidkey"; static string GpAlginShellPath = Application.dataPath + "/../BFFiles/androidkey";
static HashSet<string> AABInPackageFileHashSet = new HashSet<string>()
{
"bin",
"UnityServicesProjectConfiguration.json"
};
static BuildAndroidUtils() static BuildAndroidUtils()
{ {
@ -282,6 +289,7 @@ namespace BFEditor.Build
else if(buildInfo.IsGPChannel()) else if(buildInfo.IsGPChannel())
{ {
MergeProject(buildInfo, GoogleAsProjectPath); MergeProject(buildInfo, GoogleAsProjectPath);
FixGradleVersion(buildInfo.version_code, buildInfo.version);
} }
return result; return result;
} }
@ -391,13 +399,19 @@ namespace BFEditor.Build
static void FixGradleVersion(int versionCode, string versionName) static void FixGradleVersion(int versionCode, string versionName)
{ {
Debug.Log("[bfinfo]修正build.gradle: VersionCode " + versionCode + " VersionName " + versionName); Debug.Log("[bfinfo]修正build.gradle: VersionCode " + versionCode + " VersionName " + versionName);
var gradleFilePath = Path.Combine(GradleExcuteProjectPath, "build.gradle"); var gradleFilePath = Path.Combine(PublishAsProjectPath, "launcher", "build.gradle");
var text = File.ReadAllText(gradleFilePath); var text = File.ReadAllText(gradleFilePath);
var regex = new Regex("versionCode 1"); var regex = new Regex("versionCode 1");
text = regex.Replace(text, string.Format("versionCode {0}", versionCode)); text = regex.Replace(text, string.Format("versionCode {0}", versionCode));
regex = new Regex("versionName '0.1'"); var regex2 = new Regex("versionName '0.1.0'");
text = regex.Replace(text, string.Format("versionName '{0}'", versionName)); text = regex2.Replace(text, string.Format("versionName '{0}'", versionName));
File.WriteAllText(gradleFilePath, text); File.WriteAllText(gradleFilePath, text);
var gradleFilePath2 = Path.Combine(PublishAsProjectPath, "unityLibrary", "build.gradle");
var text2 = File.ReadAllText(gradleFilePath2);
text2 = regex.Replace(text2, string.Format("versionCode {0}", versionCode));
text2 = regex2.Replace(text2, string.Format("versionName '{0}'", versionName));
File.WriteAllText(gradleFilePath2, text2);
} }
/// <summary> /// <summary>
@ -543,5 +557,77 @@ namespace BFEditor.Build
tmp.Abort(); tmp.Abort();
} }
} }
public static void ConvertToAAB()
{
var installTimePackDirPath = Path.Combine(PublishAsProjectPath, "../", "dz_google_abb", "install_time_pack");
var targetDirPath = Path.Combine(PublishAsProjectPath, "install_time_pack");
if (Directory.Exists(targetDirPath))
{
Directory.Delete(targetDirPath, true);
Directory.CreateDirectory(targetDirPath);
}
else
{
Directory.CreateDirectory(targetDirPath);
}
BFEditorUtils.CopyDir(installTimePackDirPath, targetDirPath);
var abDirPath = Path.Combine(PublishAsProjectPath, "unityLibrary/src/main/assets");
var destFolderName = Path.Combine(PublishAsProjectPath, "install_time_pack/src/main/assets");
var dirInfo = new DirectoryInfo(abDirPath);
var floders = dirInfo.GetDirectories();
for (var i = 0; i < floders.Length; i++)
{
if (AABInPackageFileHashSet.Contains(floders[i].Name))
{
continue;
}
var newDir = Path.Combine(destFolderName, floders[i].Name);
if (!Directory.Exists(newDir))
{
Directory.CreateDirectory(newDir);
}
BFEditorUtils.CopyDir(floders[i].FullName, newDir);
Directory.Delete(floders[i].FullName, true);
}
var files = dirInfo.GetFiles();
for (var i = 0; i < files.Length; i++)
{
var file = files[i];
if (AABInPackageFileHashSet.Contains(file.Name))
{
continue;
}
var destFile = Path.Combine(destFolderName, file.Name);
if (File.Exists(destFile))
{
File.Delete(destFile);
}
File.Move(file.FullName, destFile);
}
var settingsGradleFilePath = Path.Combine(PublishAsProjectPath, "settings.gradle");
var text = File.ReadAllText(settingsGradleFilePath);
var appendText = "include ':install_time_pack'";
if (!text.EndsWith(appendText))
{
text = text + "\n" + appendText;
}
File.WriteAllText(settingsGradleFilePath, text);
var buildGradlePath = Path.Combine(PublishAsProjectPath, "launcher/build.gradle");
var buildGradleText = File.ReadAllText(buildGradlePath);
var regex2 = new Regex("assetPacks = [\":install_time_pack\"]");
if (!regex2.IsMatch(buildGradleText))
{
var regex22 = new Regex("android {");
buildGradleText = regex22.Replace(buildGradleText, "android {\n assetPacks = [\":install_time_pack\"]");
}
File.WriteAllText(buildGradlePath, buildGradleText);
Debug.Log("Android转换为AAB工程完成");
}
} }
} }

View File

@ -0,0 +1,76 @@
using System;
using System.Collections.Generic;
using System.IO;
using Newtonsoft.Json;
using UnityEditor;
using UnityEditor.Build;
using UnityEditor.Build.Reporting;
using UnityEngine;
#if UNITY_IOS
using UnityEditor.iOS.Xcode;
#endif
public class IOSLocalizationTool
{
public static readonly Dictionary<SystemLanguage, string> validLanguageMap = new Dictionary<SystemLanguage, string>()
{
[SystemLanguage.English] = "en",
[SystemLanguage.ChineseSimplified] = "zh-Hans",
[SystemLanguage.ChineseTraditional] = "zh-Hant",
[SystemLanguage.Japanese] = "ja",
[SystemLanguage.Korean] = "ko",
[SystemLanguage.Spanish] = "es",
[SystemLanguage.Vietnamese] = "vi",
[SystemLanguage.Thai] = "th",
[SystemLanguage.Indonesian] = "id",
[SystemLanguage.Portuguese] = "pt",
};
public static void SetLocalization(string pathToBuiltProject)
{
#if UNITY_IOS
string buildPath = pathToBuiltProject;
const string infoPlistName = "Info.plist";
var plistPath = Path.Combine(buildPath, infoPlistName);
PlistDocument plist = new PlistDocument();
plist.ReadFromFile(plistPath);
// url schemes
const string bundleLocalizationKey = "CFBundleLocalizations";
if (!plist.root.values.TryGetValue(bundleLocalizationKey, out var localizations))
{
localizations = plist.root.CreateArray(bundleLocalizationKey);
}
foreach (string value in validLanguageMap.Values)
{
localizations.AsArray().AddString(value);
}
plist.WriteToFile(plistPath);
var projectPath = PBXProject.GetPBXProjectPath(buildPath);
var project = new PBXProject();
project.ReadFromFile(projectPath);
var target = project.GetUnityMainTargetGuid();
var resourceTarget = project.GetResourcesBuildPhaseByTarget(target);
foreach (string value in validLanguageMap.Values)
{
var path = Path.Combine(Path.Combine(Application.dataPath, "../", "BFVersions/ios/ios_common"), $"{value}.lproj");
var inProjectPath = Path.GetFileName(path);
project.AddFolderReference(path, inProjectPath);
var resGUID = project.FindFileGuidByProjectPath(inProjectPath);
project.AddFileToBuildSection(
target,
resourceTarget,
resGUID);
}
project.WriteToFile(projectPath);
#endif
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 4be556fddd0e984428c0410a562496d8
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -20,18 +20,25 @@ namespace BFEditor
// } // }
const string BOARD_EXCEL_KEY = "bf_board_excel_key"; const string BOARD_EXCEL_KEY = "bf_board_excel_key";
const string BOARD_GRID_TYPE_KEY = "bf_board_grid_type_key"; const string BOARD_GRID_TYPE_KEY = "bf_board_grid_type_key";
const string BOARD_GRID_EDGE_KEY = "bf_board_grid_edge_key";
int gridCount = 49; int gridCount = 49;
string battleImgDirectory = "Assets/arts/textures/ui/battle/"; string battleImgDirectory = "Assets/arts/textures/ui/battle/";
string boardFilepath; string boardFilepath;
string boardGridTypePath; string boardGridTypePath;
string boardGridEdgePath;
string boardFiledName = "board"; string boardFiledName = "board";
string boardEdgeFiledName = "grid_edge";
string randomTypeStr = ""; string randomTypeStr = "";
string boardEdgeStr = "";
int curIndex = 1; int curIndex = 1;
int maxRow = 7; int maxRow = 7;
Dictionary<int, Dictionary<string, string>> boardGridTypeDict = new Dictionary<int, Dictionary<string, string>>(); Dictionary<int, Dictionary<string, string>> boardGridTypeDict = new Dictionary<int, Dictionary<string, string>>();
Dictionary<int, JArray> boardDict = new Dictionary<int, JArray>(); Dictionary<int, JArray> boardDict = new Dictionary<int, JArray>();
Dictionary<int, JArray> outPutBoardDict = new Dictionary<int, JArray>(); Dictionary<int, JArray> outPutBoardDict = new Dictionary<int, JArray>();
Dictionary<string, Texture> imgDict = new Dictionary<string, Texture>(); Dictionary<string, Texture> imgDict = new Dictionary<string, Texture>();
Dictionary<int, Dictionary<string, string>> boardGridEdgeDict = new Dictionary<int, Dictionary<string, string>>();
Dictionary<int, JArray> edgeDict = new Dictionary<int, JArray>();
Dictionary<int, JArray> outPutBoardEdgeDict = new Dictionary<int, JArray>();
bool loadExcelOver = false; bool loadExcelOver = false;
Dictionary<int, string> elementTypeImgDict = new Dictionary<int, string>(){ Dictionary<int, string> elementTypeImgDict = new Dictionary<int, string>(){
[1] = "red_1", [1] = "red_1",
@ -55,6 +62,12 @@ namespace BFEditor
{ {
boardGridTypePath = "选择grid_type配置表路径"; boardGridTypePath = "选择grid_type配置表路径";
} }
boardGridEdgePath = GetBoardGridEdgePath();
if (boardGridEdgePath.Equals(""))
{
boardGridEdgePath = "选择grid_edge_type配置表路径";
}
string[] paths = Directory.GetFiles(battleImgDirectory); string[] paths = Directory.GetFiles(battleImgDirectory);
foreach(var path in paths) foreach(var path in paths)
{ {
@ -86,6 +99,16 @@ namespace BFEditor
PlayerPrefs.SetString(BOARD_GRID_TYPE_KEY, path); PlayerPrefs.SetString(BOARD_GRID_TYPE_KEY, path);
} }
string GetBoardGridEdgePath()
{
return PlayerPrefs.GetString(BOARD_GRID_EDGE_KEY, "");
}
void SetBoardGridEdgePath(string path)
{
PlayerPrefs.SetString(BOARD_GRID_EDGE_KEY, path);
}
BoardEditorWindow() BoardEditorWindow()
{ {
this.titleContent = new GUIContent("棋盘编辑器"); this.titleContent = new GUIContent("棋盘编辑器");
@ -114,6 +137,20 @@ namespace BFEditor
} }
} }
GUILayout.EndHorizontal(); GUILayout.EndHorizontal();
GUILayout.BeginHorizontal();
GUILayout.Label("grid_edge 路径", GUILayout.Width(100));
GUILayout.Space(10);
GUILayout.TextField(boardGridEdgePath, GUILayout.Width(300));
if (GUILayout.Button("选择", GUILayout.Width(80)))
{
string openPath = EditorUtility.OpenFilePanel("选择配置表", GetBoardGridEdgePath(), "");
if (openPath.CompareTo("") != 0)
{
boardGridEdgePath = openPath;
SetBoardGridEdgePath(openPath);
}
}
GUILayout.EndHorizontal();
GUILayout.Space(10); GUILayout.Space(10);
GUILayout.BeginHorizontal(); GUILayout.BeginHorizontal();
@ -305,6 +342,74 @@ namespace BFEditor
boardDict[curIndex] = ja; boardDict[curIndex] = ja;
} }
GUILayout.EndHorizontal(); GUILayout.EndHorizontal();
GUILayout.EndVertical();
GUILayout.EndArea();
GUILayout.BeginArea(new Rect(730, 650, 500, 500));
GUILayout.BeginVertical();
GUILayout.Label("棋盘边缘元素");
boardEdgeStr = GUILayout.TextField(boardEdgeStr, GUILayout.Width(400), GUILayout.Height(100));
if(GUILayout.Button("加载边缘元素配置", GUILayout.Width(110)))
{
JArray edgeJo = edgeDict[curIndex];
string str = "[";
for (int i = 0; i < edgeJo.Count; i++)
{
JArray gridInfo = (JArray)edgeJo[i];
if (gridInfo.Count < 3)
{
continue;
}
string s = "{";
for (int j = 0; j < 3; j++)
{
s = s + gridInfo[j].ToString();
if(j != 2)
{
s = s + ", ";
}
}
s = s + "}";
str = str + s;
if (i != edgeJo.Count)
{
str = str + ", ";
}
}
boardEdgeStr = str;
}
if(GUILayout.Button("重新刷新边缘元素", GUILayout.Width(110)))
{
string[] units = boardEdgeStr.Split('{');
List<string> edgeList = new List<string>();
for (int i = 0; i < units.Length; i++)
{
string formatStr = units[i].Replace("[", "").Replace("]", "").Replace(" ", "").Replace("}", "");
string[] unitList = formatStr.Split(',');
if (unitList.Length >= 3)
{
string str = "[";
for(int j = 0; j < 3; j++)
{
str = str + unitList[j];
if (j != 2)
{
str = str + ",";
}
}
str = str + "]";
edgeList.Add(str);
}
}
JArray ja = new JArray();
for (int i = 0; i < edgeList.Count; i++)
{
JArray unit = (JArray)JsonConvert.DeserializeObject(edgeList[i]);
ja.Add(unit);
}
edgeDict[curIndex] = ja;
}
GUILayout.EndVertical();
GUILayout.EndArea(); GUILayout.EndArea();
if(GUI.Button(new Rect(1050, 10, 100, 30), "导出到Excel")) if(GUI.Button(new Rect(1050, 10, 100, 30), "导出到Excel"))
{ {
@ -357,6 +462,21 @@ namespace BFEditor
boardGridTypeDict[key] = dict; boardGridTypeDict[key] = dict;
} }
// 读取grid_edge_type配置表
BFEditorUtils.RunCommond("python", "load_board.py " + tempPath + " " + boardGridEdgePath, pythonToolPath);
string boardGridEdgeJson = File.ReadAllText(tempPath);
jsonObj = (JObject)JsonConvert.DeserializeObject(boardGridEdgeJson);
foreach (var item in jsonObj)
{
int key = int.Parse(item.Key);
Dictionary<string, string> dict = new Dictionary<string, string>();
foreach (var item2 in (JObject)item.Value)
{
dict[item2.Key] = item2.Value.ToString();
}
boardGridEdgeDict[key] = dict;
}
// 读取boardFile配置表 // 读取boardFile配置表
BFEditorUtils.RunCommond("python", "load_board.py " + tempPath + " " + boardFilepath, pythonToolPath); BFEditorUtils.RunCommond("python", "load_board.py " + tempPath + " " + boardFilepath, pythonToolPath);
string boardFileJson = File.ReadAllText(tempPath); string boardFileJson = File.ReadAllText(tempPath);
@ -369,6 +489,12 @@ namespace BFEditor
boardDict[key] = copyBoard((JArray)item.Value[boardFiledName]); boardDict[key] = copyBoard((JArray)item.Value[boardFiledName]);
outPutBoardDict[key] = copyBoard((JArray)item.Value[boardFiledName]); outPutBoardDict[key] = copyBoard((JArray)item.Value[boardFiledName]);
} }
if (item.Value[boardEdgeFiledName] != null)
{
int key = int.Parse(item.Key);
edgeDict[key] = copyBoard((JArray)item.Value[boardEdgeFiledName]);
outPutBoardEdgeDict[key] = copyBoard((JArray)item.Value[boardEdgeFiledName]);
}
} }
loadExcelOver = true; loadExcelOver = true;
@ -394,7 +520,7 @@ namespace BFEditor
void DragBoard() void DragBoard()
{ {
Texture img; Texture img;
GUI.DrawTexture(new Rect(0, 150, 702, 702), boardImg); GUI.DrawTexture(new Rect(0, 200, 702, 702), boardImg);
if(!loadExcelOver) if(!loadExcelOver)
{ {
return; return;
@ -406,7 +532,7 @@ namespace BFEditor
return; return;
} }
GUILayout.BeginArea(new Rect(0, 150, 702, 702)); GUILayout.BeginArea(new Rect(0, 200, 702, 702));
GUILayout.BeginVertical(); GUILayout.BeginVertical();
JArray jo = boardDict[curIndex]; JArray jo = boardDict[curIndex];
int posIndex = 0; int posIndex = 0;
@ -452,9 +578,52 @@ namespace BFEditor
GUILayout.EndHorizontal(); GUILayout.EndHorizontal();
} }
GUILayout.EndVertical(); GUILayout.EndVertical();
if (edgeDict.ContainsKey(curIndex))
{
JArray edgeJo = edgeDict[curIndex];
for (int i = 0; i < edgeJo.Count; i++)
{
JArray gridInfo = (JArray)edgeJo[i];
if(gridInfo.Count < 3)
{
continue;
}
int posId = (int)gridInfo[0];
int edgeType = (int)gridInfo[1];
int dir = (int)gridInfo[2];
// 绘制类型
if(boardGridEdgeDict[edgeType].ContainsKey("icon"))
{
string icon = boardGridEdgeDict[edgeType]["icon"];
if (imgDict.ContainsKey(icon))
{
int row = posId / 10;
int col = posId % 10;
img = imgDict[icon];
if (dir == 1)
{
GUI.DrawTexture(new Rect(startOffset + (col - 1) * textureWidth, startOffset + (row - 1) * textureWidth - 16, 92, 32), img);
}
else if (dir == 2)
{
GUI.DrawTexture(new Rect(startOffset + (col - 1) * textureWidth, startOffset + (row - 1) * textureWidth - 16 + textureWidth, 92, 32), img);
}
else if (dir == 3)
{
GUI.DrawTexture(new Rect(startOffset + (col - 1) * textureWidth - 16, startOffset + (row - 1) * textureWidth - 16, 32, 92), img);
}
else if (dir == 4)
{
GUI.DrawTexture(new Rect(startOffset + (col - 1) * textureWidth - 16 + textureWidth, startOffset + (row - 1) * textureWidth - 16, 32, 92), img);
}
}
}
}
}
GUILayout.EndArea(); GUILayout.EndArea();
GUILayout.BeginArea(new Rect(730, 150, 510 * 7, 550 / 7 * maxRow)); GUILayout.BeginArea(new Rect(730, 200, 510 * 7, 550 / 7 * maxRow));
GUILayout.BeginVertical(); GUILayout.BeginVertical();
GUILayout.BeginHorizontal(); GUILayout.BeginHorizontal();
GUILayout.Label("棋盘配置信息", GUILayout.Width(100), GUILayout.Height(30)); GUILayout.Label("棋盘配置信息", GUILayout.Width(100), GUILayout.Height(30));

View File

@ -136,71 +136,17 @@ namespace BFEditor
var configFileInfos = configDirInfo.GetFiles(suffix, SearchOption.TopDirectoryOnly); var configFileInfos = configDirInfo.GetFiles(suffix, SearchOption.TopDirectoryOnly);
// 检查棋盘文件格式 // 检查棋盘文件格式
checkBoard("chapter_board", env, sb);
checkBoard("chapter_board_bossrush", env, sb);
checkBoard("chapter_board_daily_challenge", env, sb);
checkBoard("chapter_board_dungeon_armor", env, sb);
checkBoard("chapter_board_dungeon_equip", env, sb);
checkBoard("chapter_board_dungeon_gold", env, sb);
checkBoard("chapter_board_dungeon_shards", env, sb);
checkBoard("chapter_board_rune", env, sb);
checkBoard("activity_pvp_board", env, sb);
checkBoard("arena_board", env, sb);
var luaScriptString = @"local cfg = require('app/config/chapter_board')
if not cfg or not cfg.data then
return ''
end
cfg = cfg.data
local tempMap = {}
local addErrorInfo = function(errorInfo, cfgId, errorStr)
if not tempMap[cfgId] then
tempMap[cfgId] = true
table.insert(errorInfo, 'cfgId = ' .. cfgId)
end
table.insert(errorInfo, ' ' .. errorStr)
end
local errorInfo = {}
for k, info in pairs(cfg) do
local board = info.board
if not board then
addErrorInfo(errorInfo, k, 'board字段')
end
if #board < 49 then
addErrorInfo(errorInfo, k, 'board长度不足' .. #board)
end
for index, v in ipairs(board) do
if not v[1] then
addErrorInfo(errorInfo, k, 'board字段中' .. index .. '')
end
if not v[2] then
addErrorInfo(errorInfo, k, 'board字段中' .. index .. '')
end
end
local mystery_box_board = info.mystery_box_board
if mystery_box_board then
for index, v in ipairs(mystery_box_board) do
if not v[1] then
addErrorInfo(errorInfo, k, 'mystery_box_board字段中' .. index .. '')
end
if not v[2] then
addErrorInfo(errorInfo, k, 'mystery_box_board字段中' .. index .. '')
end
end
end
end
if #errorInfo > 0 then
return table.concat(errorInfo, '\n');
end
return ''";
var resultStr = env.DoString(luaScriptString);
if (resultStr.Length > 0)
{
foreach(var strObj in resultStr)
{
var str = Convert.ToString(strObj);
if(!String.IsNullOrEmpty(str))
{
sb.Append(str + "\n");
}
}
}
// 检查monster // 检查monster
string monsterConfigListLua = "{"; string monsterConfigListLua = "{";
@ -213,7 +159,7 @@ namespace BFEditor
} }
} }
monsterConfigListLua += "}"; monsterConfigListLua += "}";
luaScriptString = "local ids = {}\n local MONSTER_LIST = " + monsterConfigListLua + "\n"; var luaScriptString = "local ids = {}\n local MONSTER_LIST = " + monsterConfigListLua + "\n";
luaScriptString += @"local str = {} luaScriptString += @"local str = {}
for i, name in ipairs(MONSTER_LIST) do for i, name in ipairs(MONSTER_LIST) do
if name ~= 'monster_base' and name ~= 'monster_position' and name ~= 'monster_position_base' then if name ~= 'monster_base' and name ~= 'monster_position' and name ~= 'monster_position_base' then
@ -230,7 +176,7 @@ namespace BFEditor
return table.concat(str, '\n'); return table.concat(str, '\n');
end end
return ''"; return ''";
resultStr = env.DoString(luaScriptString); var resultStr = env.DoString(luaScriptString);
if (resultStr.Length > 0) if (resultStr.Length > 0)
{ {
foreach(var strObj in resultStr) foreach(var strObj in resultStr)
@ -299,6 +245,76 @@ namespace BFEditor
return sb; return sb;
} }
public static void checkBoard(string configName, LuaEnv env, in StringBuilder sb)
{
var luaScriptString = @"
if not cfg or not cfg.data then
return ''
end
cfg = cfg.data
local tempMap = {}
local addErrorInfo = function(errorInfo, cfgId, errorStr)
if not tempMap[cfgId] then
tempMap[cfgId] = true
table.insert(errorInfo, 'cfgId = ' .. cfgId)
end
table.insert(errorInfo, ' ' .. errorStr)
end
local errorInfo = {}
for k, info in pairs(cfg) do
local board = info.board or info.board_daily_challenge
if not board then
addErrorInfo(errorInfo, k, configName .. ' board字段')
else
if #board < 49 then
addErrorInfo(errorInfo, k, configName .. ' board长度不足' .. #board)
end
for index, v in ipairs(board) do
if not v[1] then
addErrorInfo(errorInfo, k, configName .. ' board字段中' .. index .. '')
end
if not v[2] then
addErrorInfo(errorInfo, k, configName .. ' board字段中' .. index .. '')
elseif v[2] > 5 or v[2] < 0 then
addErrorInfo(errorInfo, k, configName .. ' board字段中' .. index .. '' .. v[2])
end
end
local mystery_box_board = info.mystery_box_board
if mystery_box_board then
for index, v in ipairs(mystery_box_board) do
if not v[1] then
addErrorInfo(errorInfo, k, configName .. ' mystery_box_board字段中' .. index .. '')
end
if not v[2] then
addErrorInfo(errorInfo, k, configName .. ' mystery_box_board字段中' .. index .. '')
end
end
end
end
end
if #errorInfo > 0 then
return table.concat(errorInfo, '\n');
end
return ''";
var resultStr = env.DoString(" local cfg = require('app/config/" + configName + "')\n" + "local configName = '" + configName + "'\n" + luaScriptString);
if (resultStr.Length > 0)
{
foreach(var strObj in resultStr)
{
var str = Convert.ToString(strObj);
if(!String.IsNullOrEmpty(str))
{
sb.Append(str + "\n");
}
}
}
}
public static bool FastExportExcelToLua(bool isDeveloper, string designExcelPath) public static bool FastExportExcelToLua(bool isDeveloper, string designExcelPath)
{ {
failFlag = false; failFlag = false;

View File

@ -104,7 +104,7 @@ namespace BFEditor
[MenuItem("其他工具/棋盘编辑器", false, 9)] [MenuItem("其他工具/棋盘编辑器", false, 9)]
public static void CreateBoardEditorWindow() public static void CreateBoardEditorWindow()
{ {
var window = (BoardEditorWindow)EditorWindow.GetWindowWithRect(typeof(BoardEditorWindow), new Rect(Screen.width / 2, Screen.height / 2, 1200, 850), true); var window = (BoardEditorWindow)EditorWindow.GetWindowWithRect(typeof(BoardEditorWindow), new Rect(Screen.width / 2, Screen.height / 2, 1200, 1000), true);
window.Show(); window.Show();
} }
} }

View File

@ -11,8 +11,8 @@ public class JenkinsAdapter {
/// 构建版本号 /// 构建版本号
/// </summary> /// </summary>
private static string BuildVersion = (int.Parse(DateTime.Now.ToString("yyMMddHH"))).ToString(); private static string BuildVersion = (int.Parse(DateTime.Now.ToString("yyMMddHH"))).ToString();
private static int versionCode = 8; private static int versionCode = 10;
private static string versionName = "1.2.8"; private static string versionName = "1.4.0";
[MenuItem("Jenkins/JenkinsBuildIos")] [MenuItem("Jenkins/JenkinsBuildIos")]
public static void CommandLineBuildIos() { public static void CommandLineBuildIos() {
@ -27,7 +27,7 @@ public class JenkinsAdapter {
// 设置版本号 // 设置版本号
PlayerSettings.bundleVersion = buildInfo.version; PlayerSettings.bundleVersion = buildInfo.version;
//Jenkins要求自动构建最低ios8.0 //SDK要求
PlayerSettings.iOS.targetOSVersionString = "12.0"; PlayerSettings.iOS.targetOSVersionString = "12.0";
//设置Build每次需要增加 //设置Build每次需要增加
PlayerSettings.iOS.buildNumber = versionCode.ToString(); PlayerSettings.iOS.buildNumber = versionCode.ToString();

View File

@ -68,7 +68,8 @@ namespace BFEditor
"TMPro.SortingLayerHelper", "TMPro.SortingLayerHelper",
"UnityEngine.CloudStreaming", "UnityEngine.CloudStreaming",
"BFEditor.EditorBattleRoleAttackOperate", "BFEditor.EditorBattleRoleAttackOperate",
"IronSourceBannerEvents", "IronSourceEvents", "IronSourceInterstitialEvents", "IronSourceRewardedVideoEvents" "IronSourceBannerEvents", "IronSourceEvents", "IronSourceInterstitialEvents", "IronSourceRewardedVideoEvents",
"IronSourceAdQualityManifestTools"
}; };
static bool isExcluded(Type type) static bool isExcluded(Type type)

File diff suppressed because it is too large Load Diff

View File

@ -8,19 +8,28 @@
url "https://maven.google.com" url "https://maven.google.com"
} }
maven { maven {
url "https://android-sdk.is.com/" // Assets/IronSource/Editor/IronSourceSDKDependencies.xml:9, Assets/IronSource/Editor/ISAdColonyAdapterDependencies.xml:16, Assets/IronSource/Editor/ISAdMobAdapterDependencies.xml:16, Assets/IronSource/Editor/ISAppLovinAdapterDependencies.xml:8, Assets/IronSource/Editor/ISChartboostAdapterDependencies.xml:8, Assets/IronSource/Editor/ISFacebookAdapterDependencies.xml:16, Assets/IronSource/Editor/ISFyberAdapterDependencies.xml:16, Assets/IronSource/Editor/ISLiftoffAdapterDependencies.xml:16, Assets/IronSource/Editor/ISPangleAdapterDependencies.xml:8, Assets/IronSource/Editor/ISTapJoyAdapterDependencies.xml:8, Assets/IronSource/Editor/ISUnityAdsAdapterDependencies.xml:8 url "https://android-sdk.is.com/" // Assets/ThirdParty/IronSource/Editor/IronSourceSDKDependencies.xml:9, Assets/ThirdParty/IronSource/Editor/ISAdColonyAdapterDependencies.xml:16, Assets/ThirdParty/IronSource/Editor/ISAdMobAdapterDependencies.xml:16, Assets/ThirdParty/IronSource/Editor/ISAppLovinAdapterDependencies.xml:8, Assets/ThirdParty/IronSource/Editor/ISChartboostAdapterDependencies.xml:8, Assets/ThirdParty/IronSource/Editor/ISFacebookAdapterDependencies.xml:16, Assets/ThirdParty/IronSource/Editor/ISFyberAdapterDependencies.xml:16, Assets/ThirdParty/IronSource/Editor/ISMintegralAdapterDependencies.xml:48, Assets/ThirdParty/IronSource/Editor/ISPangleAdapterDependencies.xml:8, Assets/ThirdParty/IronSource/Editor/ISTapJoyAdapterDependencies.xml:8, Assets/ThirdParty/IronSource/Editor/ISUnityAdsAdapterDependencies.xml:8, Assets/ThirdParty/IronSource/Editor/ISVungleAdapterDependencies.xml:16
} }
maven { maven {
url "https://maven.google.com/" // Assets/IronSource/Editor/IronSourceSDKDependencies.xml:17, Assets/IronSource/Editor/IronSourceSDKDependencies.xml:25, Assets/IronSource/Editor/ISAdColonyAdapterDependencies.xml:8, Assets/IronSource/Editor/ISAdMobAdapterDependencies.xml:8, Assets/IronSource/Editor/ISAppLovinAdapterDependencies.xml:15, Assets/IronSource/Editor/ISChartboostAdapterDependencies.xml:15, Assets/IronSource/Editor/ISFacebookAdapterDependencies.xml:8, Assets/IronSource/Editor/ISLiftoffAdapterDependencies.xml:8, Assets/IronSource/Editor/ISUnityAdsAdapterDependencies.xml:15 url "https://maven.google.com/" // Assets/ThirdParty/IronSource/Editor/IronSourceSDKDependencies.xml:17, Assets/ThirdParty/IronSource/Editor/IronSourceSDKDependencies.xml:25, Assets/ThirdParty/IronSource/Editor/ISAdColonyAdapterDependencies.xml:8, Assets/ThirdParty/IronSource/Editor/ISAdMobAdapterDependencies.xml:8, Assets/ThirdParty/IronSource/Editor/ISFacebookAdapterDependencies.xml:8, Assets/ThirdParty/IronSource/Editor/ISMintegralAdapterDependencies.xml:40, Assets/ThirdParty/IronSource/Editor/ISUnityAdsAdapterDependencies.xml:15
} }
maven { maven {
url "https://repo.maven.apache.org/maven2/" // Assets/IronSource/Editor/ISFyberAdapterDependencies.xml:8 url "https://cboost.jfrog.io/artifactory/chartboost-ads/" // Assets/ThirdParty/IronSource/Editor/ISChartboostAdapterDependencies.xml:15
} }
maven { maven {
url "https://artifact.bytedance.com/repository/pangle/" // Assets/IronSource/Editor/ISPangleAdapterDependencies.xml:15 url "https://repo.maven.apache.org/maven2/" // Assets/ThirdParty/IronSource/Editor/ISFyberAdapterDependencies.xml:8
} }
maven { maven {
url "https://sdk.tapjoy.com/" // Assets/IronSource/Editor/ISTapJoyAdapterDependencies.xml:15 url "https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea/" // Assets/ThirdParty/IronSource/Editor/ISMintegralAdapterDependencies.xml:8, Assets/ThirdParty/IronSource/Editor/ISMintegralAdapterDependencies.xml:16, Assets/ThirdParty/IronSource/Editor/ISMintegralAdapterDependencies.xml:24, Assets/ThirdParty/IronSource/Editor/ISMintegralAdapterDependencies.xml:32
}
maven {
url "https://artifact.bytedance.com/repository/pangle/" // Assets/ThirdParty/IronSource/Editor/ISPangleAdapterDependencies.xml:15
}
maven {
url "https://sdk.tapjoy.com/" // Assets/ThirdParty/IronSource/Editor/ISTapJoyAdapterDependencies.xml:15
}
maven {
url "https://jitpack.io/" // Assets/ThirdParty/IronSource/Editor/ISVungleAdapterDependencies.xml:8
} }
mavenLocal() mavenLocal()
jcenter() jcenter()
@ -34,42 +43,50 @@ apply plugin: 'com.android.library'
dependencies { dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar']) implementation fileTree(dir: 'libs', include: ['*.jar'])
// Android Resolver Dependencies Start // Android Resolver Dependencies Start
implementation 'com.adcolony:sdk:4.8.0' // Assets/IronSource/Editor/ISAdColonyAdapterDependencies.xml:8 implementation 'androidx.recyclerview:recyclerview:1.2.1' // Assets/ThirdParty/IronSource/Editor/ISMintegralAdapterDependencies.xml:40
implementation 'com.adcolony:sdk:4.8.0' // Assets/ThirdParty/IronSource/Editor/ISAdColonyAdapterDependencies.xml:8
implementation 'com.android.installreferrer:installreferrer:2.1' // Assets/ThirdParty/AppsFlyer/Editor/AppsFlyerDependencies.xml:10 implementation 'com.android.installreferrer:installreferrer:2.1' // Assets/ThirdParty/AppsFlyer/Editor/AppsFlyerDependencies.xml:10
implementation 'com.android.support:appcompat-v7:25.3.1' // Facebook.Unity.Editor.AndroidSupportLibraryResolver.addSupportLibraryDependency implementation 'com.android.support:appcompat-v7:25.3.1' // Facebook.Unity.Editor.AndroidSupportLibraryResolver.addSupportLibraryDependency
implementation 'com.android.support:cardview-v7:25.3.1' // Facebook.Unity.Editor.AndroidSupportLibraryResolver.addSupportLibraryDependency implementation 'com.android.support:cardview-v7:25.3.1' // Facebook.Unity.Editor.AndroidSupportLibraryResolver.addSupportLibraryDependency
implementation 'com.android.support:customtabs:25.3.1' // Facebook.Unity.Editor.AndroidSupportLibraryResolver.addSupportLibraryDependency implementation 'com.android.support:customtabs:25.3.1' // Facebook.Unity.Editor.AndroidSupportLibraryResolver.addSupportLibraryDependency
implementation 'com.android.support:support-v4:25.3.1' // Facebook.Unity.Editor.AndroidSupportLibraryResolver.addSupportLibraryDependency implementation 'com.android.support:support-v4:25.3.1' // Facebook.Unity.Editor.AndroidSupportLibraryResolver.addSupportLibraryDependency
implementation 'com.applovin:applovin-sdk:11.7.1' // Assets/IronSource/Editor/ISAppLovinAdapterDependencies.xml:15 implementation 'com.applovin:applovin-sdk:11.10.1' // Assets/ThirdParty/MaxSdk/AppLovin/Editor/Dependencies.xml:4
implementation 'com.appsflyer:adrevenue:6.5.4' // Assets/ThirdParty/AppsFlyer/Editor/AppsFlyerAdRevenueDependencies.xml:4
implementation 'com.appsflyer:af-android-sdk:6.4.1' // Assets/ThirdParty/AppsFlyer/Editor/AppsFlyerDependencies.xml:6 implementation 'com.appsflyer:af-android-sdk:6.4.1' // Assets/ThirdParty/AppsFlyer/Editor/AppsFlyerDependencies.xml:6
implementation 'com.appsflyer:unity-adrevenue-generic-wrapper:6.5.4' // Assets/ThirdParty/AppsFlyer/Editor/AppsFlyerAdRevenueDependencies.xml:5
implementation 'com.appsflyer:unity-wrapper:6.4.1' // Assets/ThirdParty/AppsFlyer/Editor/AppsFlyerDependencies.xml:8 implementation 'com.appsflyer:unity-wrapper:6.4.1' // Assets/ThirdParty/AppsFlyer/Editor/AppsFlyerDependencies.xml:8
implementation 'com.chartboost:chartboost-sdk:9.2.0' // Assets/IronSource/Editor/ISChartboostAdapterDependencies.xml:15 implementation 'com.chartboost:chartboost-sdk:9.3.1' // Assets/ThirdParty/IronSource/Editor/ISChartboostAdapterDependencies.xml:15
implementation 'com.facebook.android:audience-network-sdk:6.12.0' // Assets/IronSource/Editor/ISFacebookAdapterDependencies.xml:8 implementation 'com.facebook.android:audience-network-sdk:6.16.0' // Assets/ThirdParty/IronSource/Editor/ISFacebookAdapterDependencies.xml:8
implementation 'com.facebook.android:facebook-applinks:[15.1,16)' // Assets/ThirdParty/FacebookSDK/Plugins/Editor/Dependencies.xml:6 implementation 'com.facebook.android:facebook-applinks:[15.1,16)' // Assets/ThirdParty/FacebookSDK/Plugins/Editor/Dependencies.xml:6
implementation 'com.facebook.android:facebook-core:[15.1,16)' // Assets/ThirdParty/FacebookSDK/Plugins/Editor/Dependencies.xml:5 implementation 'com.facebook.android:facebook-core:[15.1,16)' // Assets/ThirdParty/FacebookSDK/Plugins/Editor/Dependencies.xml:5
implementation 'com.facebook.android:facebook-gamingservices:[15.1,16)' // Assets/ThirdParty/FacebookSDK/Plugins/Editor/Dependencies.xml:9 implementation 'com.facebook.android:facebook-gamingservices:[15.1,16)' // Assets/ThirdParty/FacebookSDK/Plugins/Editor/Dependencies.xml:9
implementation 'com.facebook.android:facebook-login:[15.1,16)' // Assets/ThirdParty/FacebookSDK/Plugins/Editor/Dependencies.xml:7 implementation 'com.facebook.android:facebook-login:[15.1,16)' // Assets/ThirdParty/FacebookSDK/Plugins/Editor/Dependencies.xml:7
implementation 'com.facebook.android:facebook-share:[15.1,16)' // Assets/ThirdParty/FacebookSDK/Plugins/Editor/Dependencies.xml:8 implementation 'com.facebook.android:facebook-share:[15.1,16)' // Assets/ThirdParty/FacebookSDK/Plugins/Editor/Dependencies.xml:8
implementation 'com.fyber:marketplace-sdk:8.2.2' // Assets/IronSource/Editor/ISFyberAdapterDependencies.xml:8 implementation 'com.fyber:marketplace-sdk:8.2.4' // Assets/ThirdParty/IronSource/Editor/ISFyberAdapterDependencies.xml:8
implementation 'com.google.android.gms:play-services-ads:21.5.0' // Assets/IronSource/Editor/ISAdMobAdapterDependencies.xml:8 implementation 'com.google.android.gms:play-services-ads:22.2.0' // Assets/ThirdParty/IronSource/Editor/ISAdMobAdapterDependencies.xml:8
implementation 'com.google.android.gms:play-services-ads-identifier:18.0.1' // Assets/IronSource/Editor/IronSourceSDKDependencies.xml:17 implementation 'com.google.android.gms:play-services-ads-identifier:18.0.1' // Assets/ThirdParty/IronSource/Editor/IronSourceSDKDependencies.xml:17
implementation 'com.google.android.gms:play-services-basement:18.1.0' // Assets/IronSource/Editor/IronSourceSDKDependencies.xml:25 implementation 'com.google.android.gms:play-services-basement:18.1.0' // Assets/ThirdParty/IronSource/Editor/IronSourceSDKDependencies.xml:25
implementation 'com.ironsource.adapters:adcolonyadapter:4.3.14' // Assets/IronSource/Editor/ISAdColonyAdapterDependencies.xml:16 implementation 'com.ironsource.adapters:adcolonyadapter:4.3.15' // Assets/ThirdParty/IronSource/Editor/ISAdColonyAdapterDependencies.xml:16
implementation 'com.ironsource.adapters:admobadapter:4.3.35' // Assets/IronSource/Editor/ISAdMobAdapterDependencies.xml:16 implementation 'com.ironsource.adapters:admobadapter:4.3.39' // Assets/ThirdParty/IronSource/Editor/ISAdMobAdapterDependencies.xml:16
implementation 'com.ironsource.adapters:applovinadapter:4.3.37' // Assets/IronSource/Editor/ISAppLovinAdapterDependencies.xml:8 implementation 'com.ironsource.adapters:applovinadapter:4.3.39' // Assets/ThirdParty/IronSource/Editor/ISAppLovinAdapterDependencies.xml:8
implementation 'com.ironsource.adapters:chartboostadapter:4.3.11' // Assets/IronSource/Editor/ISChartboostAdapterDependencies.xml:8 implementation 'com.ironsource.adapters:chartboostadapter:4.3.12' // Assets/ThirdParty/IronSource/Editor/ISChartboostAdapterDependencies.xml:8
implementation 'com.ironsource.adapters:facebookadapter:4.3.39' // Assets/IronSource/Editor/ISFacebookAdapterDependencies.xml:16 implementation 'com.ironsource.adapters:facebookadapter:4.3.45' // Assets/ThirdParty/IronSource/Editor/ISFacebookAdapterDependencies.xml:16
implementation 'com.ironsource.adapters:fyberadapter:4.3.24' // Assets/IronSource/Editor/ISFyberAdapterDependencies.xml:16 implementation 'com.ironsource.adapters:fyberadapter:4.3.28' // Assets/ThirdParty/IronSource/Editor/ISFyberAdapterDependencies.xml:16
implementation 'com.ironsource.adapters:liftoffadapter:4.3.5' // Assets/IronSource/Editor/ISLiftoffAdapterDependencies.xml:16 implementation 'com.ironsource.adapters:mintegraladapter:4.3.19' // Assets/ThirdParty/IronSource/Editor/ISMintegralAdapterDependencies.xml:48
implementation 'com.ironsource.adapters:pangleadapter:4.3.17' // Assets/IronSource/Editor/ISPangleAdapterDependencies.xml:8 implementation 'com.ironsource.adapters:pangleadapter:4.3.22' // Assets/ThirdParty/IronSource/Editor/ISPangleAdapterDependencies.xml:8
implementation 'com.ironsource.adapters:tapjoyadapter:4.1.24' // Assets/IronSource/Editor/ISTapJoyAdapterDependencies.xml:8 implementation 'com.ironsource.adapters:tapjoyadapter:4.1.25' // Assets/ThirdParty/IronSource/Editor/ISTapJoyAdapterDependencies.xml:8
implementation 'com.ironsource.adapters:unityadsadapter:4.3.27' // Assets/IronSource/Editor/ISUnityAdsAdapterDependencies.xml:8 implementation 'com.ironsource.adapters:unityadsadapter:4.3.33' // Assets/ThirdParty/IronSource/Editor/ISUnityAdsAdapterDependencies.xml:8
implementation 'com.ironsource.sdk:mediationsdk:7.3.0.1' // Assets/IronSource/Editor/IronSourceSDKDependencies.xml:9 implementation 'com.ironsource.adapters:vungleadapter:4.3.22' // Assets/ThirdParty/IronSource/Editor/ISVungleAdapterDependencies.xml:16
implementation 'com.pangle.global:ads-sdk:5.0.0.8' // Assets/IronSource/Editor/ISPangleAdapterDependencies.xml:15 implementation 'com.ironsource.sdk:mediationsdk:7.5.1' // Assets/ThirdParty/IronSource/Editor/IronSourceSDKDependencies.xml:9
implementation 'com.mbridge.msdk.oversea:mbbanner:16.5.21' // Assets/ThirdParty/IronSource/Editor/ISMintegralAdapterDependencies.xml:24
implementation 'com.mbridge.msdk.oversea:mbbid:16.5.21' // Assets/ThirdParty/IronSource/Editor/ISMintegralAdapterDependencies.xml:32
implementation 'com.mbridge.msdk.oversea:newinterstitial:16.5.21' // Assets/ThirdParty/IronSource/Editor/ISMintegralAdapterDependencies.xml:8
implementation 'com.mbridge.msdk.oversea:reward:16.5.21' // Assets/ThirdParty/IronSource/Editor/ISMintegralAdapterDependencies.xml:16
implementation 'com.pangle.global:ads-sdk:5.5.0.5' // Assets/ThirdParty/IronSource/Editor/ISPangleAdapterDependencies.xml:15
implementation 'com.parse.bolts:bolts-android:1.4.0' // Assets/ThirdParty/FacebookSDK/Plugins/Editor/Dependencies.xml:4 implementation 'com.parse.bolts:bolts-android:1.4.0' // Assets/ThirdParty/FacebookSDK/Plugins/Editor/Dependencies.xml:4
implementation 'com.tapjoy:tapjoy-android-sdk:12.11.1' // Assets/IronSource/Editor/ISTapJoyAdapterDependencies.xml:15 implementation 'com.tapjoy:tapjoy-android-sdk:13.0.1' // Assets/ThirdParty/IronSource/Editor/ISTapJoyAdapterDependencies.xml:15
implementation 'com.unity3d.ads:unity-ads:4.6.1' // Assets/IronSource/Editor/ISUnityAdsAdapterDependencies.xml:15 implementation 'com.unity3d.ads:unity-ads:4.9.1' // Assets/ThirdParty/IronSource/Editor/ISUnityAdsAdapterDependencies.xml:15
implementation 'io.liftoff:liftoffads:1.9.1' // Assets/IronSource/Editor/ISLiftoffAdapterDependencies.xml:8 implementation 'com.vungle:vungle-ads:7.0.0' // Assets/ThirdParty/IronSource/Editor/ISVungleAdapterDependencies.xml:8
// Android Resolver Dependencies End // Android Resolver Dependencies End
**DEPS**} **DEPS**}

View File

@ -111,8 +111,8 @@ public partial class AdManager
string networkPlacement = adInfo.NetworkPlacement; // The placement ID from the network that showed the ad string networkPlacement = adInfo.NetworkPlacement; // The placement ID from the network that showed the ad
string adFormat = adInfo.AdFormat; string adFormat = adInfo.AdFormat;
var dict = new Dictionary<string, string>(); var dict = new Dictionary<string, System.Object>();
dict.Add("revenue", revenue.ToString()); dict.Add("revenue", revenue);
dict.Add("country_code", countryCode); dict.Add("country_code", countryCode);
dict.Add("network_name", networkName); dict.Add("network_name", networkName);
dict.Add("ad_unit_Id", adUnitId); dict.Add("ad_unit_Id", adUnitId);

View File

@ -31,10 +31,22 @@ namespace BF
// SDK init // SDK init
BFLog.Log("unity-script: IronSource.Agent.init"); BFLog.Log("unity-script: IronSource.Agent.init");
// IronSource.Agent.setMetaData("is_test_suite", "enable");
IronSource.Agent.init(appKey); IronSource.Agent.init(appKey);
IronSource.Agent.setManualLoadRewardedVideo(true); IronSource.Agent.setManualLoadRewardedVideo(true);
// 初始化之前先设置一下用户id
// ISAdQualityConfig adQualityConfig = new ISAdQualityConfig();
// adQualityConfig.UserId = SystemInfo.deviceUniqueIdentifier;
// // adQualityConfig.TestMode = true;
// // adQualityConfig.LogLevel = ISAdQualityLogLevel.INFO;
// IronSourceAdQuality.Initialize(appKey, adQualityConfig);
#elif UNITY_IPHONE #elif UNITY_IPHONE
// string appKey = "8545d445"; // string appKey = "8545d445";
// 初始化之前先设置一下用户id
// ISAdQualityConfig adQualityConfig = new ISAdQualityConfig();
// adQualityConfig.UserId = SystemInfo.deviceUniqueIdentifier;
// IronSourceAdQuality.Initialize(appKey, adQualityConfig);
#else #else
// string appKey = "unexpected_platform"; // string appKey = "unexpected_platform";
#endif #endif
@ -144,6 +156,8 @@ namespace BF
void SdkInitializationCompletedEvent() void SdkInitializationCompletedEvent()
{ {
BFLog.Log("unity-script: I got SdkInitializationCompletedEvent"); BFLog.Log("unity-script: I got SdkInitializationCompletedEvent");
//Launch test suite
// IronSource.Agent.launchTestSuite();
} }
#endregion #endregion
@ -272,8 +286,8 @@ namespace BF
{ {
return; return;
} }
var dict = new Dictionary<string, string>(); var dict = new Dictionary<string, System.Object>();
dict.Add("revenue", revenue.ToString()); dict.Add("revenue", revenue);
dict.Add("auction_id", impressionData.auctionId); dict.Add("auction_id", impressionData.auctionId);
dict.Add("country_code", impressionData.country); dict.Add("country_code", impressionData.country);
dict.Add("network_name", impressionData.adNetwork); dict.Add("network_name", impressionData.adNetwork);
@ -287,7 +301,7 @@ namespace BF
} }
if (!ReferenceEquals(impressionData.lifetimeRevenue, null)) if (!ReferenceEquals(impressionData.lifetimeRevenue, null))
{ {
dict.Add("lifetime_revenue", impressionData.lifetimeRevenue.ToString()); dict.Add("lifetime_revenue", impressionData.lifetimeRevenue);
} }
if (!string.IsNullOrEmpty(impressionData.encryptedCPM)) if (!string.IsNullOrEmpty(impressionData.encryptedCPM))
{ {

View File

@ -0,0 +1,116 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
// using BF.NativeCore.Platform;
namespace BF
{
//copy from sdk
public enum NotchType
{
NONE,
ANDROID,
}
[System.Serializable]
public class NotchScreenInfo
{
public NotchType notchType = NotchType.NONE;
public bool enabled = false;
public int width = 0;
public int height = 0;
public override string ToString()
{
return string.Format("notchType:{0} showNotch:{1} width:{2} height:{3}", notchType, enabled, width, height);
}
}
public class DZSDKManager : MonoBehaviour
{
#if UNITY_ANDROID
/// <summary>
/// android原生代码对象
/// </summary>
AndroidJavaObject ajc;
#endif
//解析的数据
private NotchScreenInfo notchScreenInfo = new NotchScreenInfo();
private bool initNotchScreen = false;
private void Awake()
{
#if UNITY_ANDROID
//通过该API来实例化导入的arr中对应的类
ajc = new AndroidJavaObject("com.droidhang.aod.AODHelper");
#endif
}
public void CSGetNotchScreenInfo()
{
if (initNotchScreen) return;
BFLog.Log("尝试获取适配信息 CSGetNotchScreenInfo");
#if UNITY_ANDROID
//通过API来调用原生代码的方法
bool success = ajc.Call<bool>("getNotchScreen");
if (success)
{
initNotchScreen = true;
//请求成功
BFLog.Log("获取安卓刘海屏成功");
}
#endif
}
/// <summary>
/// 原生层通过该方法传回信息
/// </summary>
/// <param name="content"></param>
public void GetNotchScreen(string content)
{
#if UNITY_ANDROID
BFLog.Log("获取NotchInfo:" + content);
if (!string.IsNullOrEmpty(content))
{
//解析刘海屏数据
notchScreenInfo = JsonUtility.FromJson<NotchScreenInfo>(content);
BFLog.Log("解析 NotchScreen:" + notchScreenInfo.ToString());
}
#endif
}
/// <summary>
/// 对外接口 获取刘海屏信息
/// </summary>
/// <returns></returns>
public NotchScreenInfo GetNotchScreenInfo()
{
return notchScreenInfo;
}
// 刘海屏信息 ***************************************************************************************************
public NotchType GetNotchScreenType()
{
return notchScreenInfo.notchType;
}
public bool GetNotchScreenEnable()
{
return notchScreenInfo.enabled;
}
public int GetNotchScreenWidth()
{
return notchScreenInfo.width;
}
public int GetNotchScreenHeight()
{
return notchScreenInfo.height;
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: ced1766fcb78b314db1ae240a0e27a9f
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,5 +1,5 @@
<dependencies> <dependencies>
<unityversion>4.3.19.0</unityversion> <unityversion>4.3.20.1</unityversion>
<androidPackages> <androidPackages>
<androidPackage spec="com.adcolony:sdk:4.8.0"> <androidPackage spec="com.adcolony:sdk:4.8.0">
<repositories> <repositories>
@ -9,7 +9,7 @@
</androidPackages> </androidPackages>
<androidPackages> <androidPackages>
<androidPackage spec="com.ironsource.adapters:adcolonyadapter:4.3.14"> <androidPackage spec="com.ironsource.adapters:adcolonyadapter:4.3.15">
<repositories> <repositories>
<repository>https://android-sdk.is.com/</repository> <repository>https://android-sdk.is.com/</repository>
</repositories> </repositories>
@ -17,7 +17,7 @@
</androidPackages> </androidPackages>
<!-- <iosPods> <!-- <iosPods>
<iosPod name="IronSourceAdColonyAdapter" version="4.3.16.0"> <iosPod name="IronSourceAdColonyAdapter" version="4.3.17.1">
<sources> <sources>
<source>https://github.com/CocoaPods/Specs</source> <source>https://github.com/CocoaPods/Specs</source>
</sources> </sources>

View File

@ -1,7 +1,7 @@
<dependencies> <dependencies>
<unityversion>4.3.47.0</unityversion> <unityversion>4.3.54.0</unityversion>
<androidPackages> <androidPackages>
<androidPackage spec="com.google.android.gms:play-services-ads:21.5.0"> <androidPackage spec="com.google.android.gms:play-services-ads:22.2.0">
<repositories> <repositories>
<repository>https://maven.google.com/</repository> <repository>https://maven.google.com/</repository>
</repositories> </repositories>
@ -9,7 +9,7 @@
</androidPackages> </androidPackages>
<androidPackages> <androidPackages>
<androidPackage spec="com.ironsource.adapters:admobadapter:4.3.35"> <androidPackage spec="com.ironsource.adapters:admobadapter:4.3.39">
<repositories> <repositories>
<repository>https://android-sdk.is.com/</repository> <repository>https://android-sdk.is.com/</repository>
</repositories> </repositories>
@ -17,7 +17,7 @@
</androidPackages> </androidPackages>
<!-- <iosPods> <!-- <iosPods>
<iosPod name="IronSourceAdMobAdapter" version="4.3.41.0"> <iosPod name="IronSourceAdMobAdapter" version="4.3.47.0">
<sources> <sources>
<source>https://github.com/CocoaPods/Specs</source> <source>https://github.com/CocoaPods/Specs</source>
</sources> </sources>

View File

@ -1,21 +1,21 @@
<dependencies> <dependencies>
<unityversion>4.3.42.0</unityversion> <unityversion>4.3.44.3</unityversion>
<androidPackages> <androidPackages>
<androidPackage spec="com.ironsource.adapters:applovinadapter:4.3.37"> <androidPackage spec="com.ironsource.adapters:applovinadapter:4.3.39">
<repositories> <repositories>
<repository>https://android-sdk.is.com/</repository> <repository>https://android-sdk.is.com/</repository>
</repositories> </repositories>
</androidPackage> </androidPackage>
</androidPackages> </androidPackages>
<androidPackages> <androidPackages>
<androidPackage spec="com.applovin:applovin-sdk:11.7.1"> <androidPackage spec="com.applovin:applovin-sdk:11.10.1">
<repositories> <repositories>
<repository>https://maven.google.com/</repository> <repository>https://maven.google.com/</repository>
</repositories> </repositories>
</androidPackage> </androidPackage>
</androidPackages> </androidPackages>
<!-- <iosPods> <!-- <iosPods>
<iosPod name="IronSourceAppLovinAdapter" version="4.3.38.0"> <iosPod name="IronSourceAppLovinAdapter" version="4.3.40.3">
<sources> <sources>
<source>https://github.com/CocoaPods/Specs</source> <source>https://github.com/CocoaPods/Specs</source>
</sources> </sources>

View File

@ -1,21 +1,21 @@
<dependencies> <dependencies>
<unityversion>4.3.17.0</unityversion> <unityversion>4.3.19.2</unityversion>
<androidPackages> <androidPackages>
<androidPackage spec="com.ironsource.adapters:chartboostadapter:4.3.11"> <androidPackage spec="com.ironsource.adapters:chartboostadapter:4.3.12">
<repositories> <repositories>
<repository>https://android-sdk.is.com/</repository> <repository>https://android-sdk.is.com/</repository>
</repositories> </repositories>
</androidPackage> </androidPackage>
</androidPackages> </androidPackages>
<androidPackages> <androidPackages>
<androidPackage spec="com.chartboost:chartboost-sdk:9.2.0"> <androidPackage spec="com.chartboost:chartboost-sdk:9.3.1">
<repositories> <repositories>
<repository>https://maven.google.com/</repository> <repository>https://cboost.jfrog.io/artifactory/chartboost-ads/</repository>
</repositories> </repositories>
</androidPackage> </androidPackage>
</androidPackages> </androidPackages>
<!-- <iosPods> <!-- <iosPods>
<iosPod name="IronSourceChartboostAdapter" version="4.3.13.0"> <iosPod name="IronSourceChartboostAdapter" version="4.3.15.2">
<sources> <sources>
<source>https://github.com/CocoaPods/Specs</source> <source>https://github.com/CocoaPods/Specs</source>
</sources> </sources>

View File

@ -1,7 +1,7 @@
<dependencies> <dependencies>
<unityversion>4.3.52.0</unityversion> <unityversion>4.3.61.0</unityversion>
<androidPackages> <androidPackages>
<androidPackage spec="com.facebook.android:audience-network-sdk:6.12.0"> <androidPackage spec="com.facebook.android:audience-network-sdk:6.16.0">
<repositories> <repositories>
<repository>https://maven.google.com/</repository> <repository>https://maven.google.com/</repository>
</repositories> </repositories>
@ -9,7 +9,7 @@
</androidPackages> </androidPackages>
<androidPackages> <androidPackages>
<androidPackage spec="com.ironsource.adapters:facebookadapter:4.3.39"> <androidPackage spec="com.ironsource.adapters:facebookadapter:4.3.45">
<repositories> <repositories>
<repository>https://android-sdk.is.com/</repository> <repository>https://android-sdk.is.com/</repository>
</repositories> </repositories>
@ -17,7 +17,7 @@
</androidPackages> </androidPackages>
<!-- <iosPods> <!-- <iosPods>
<iosPod name="IronSourceFacebookAdapter" version="4.3.39.0"> <iosPod name="IronSourceFacebookAdapter" version="4.3.43.0">
<sources> <sources>
<source>https://github.com/CocoaPods/Specs</source> <source>https://github.com/CocoaPods/Specs</source>
</sources> </sources>

View File

@ -1,7 +1,7 @@
<dependencies> <dependencies>
<unityversion>4.3.34.0</unityversion> <unityversion>4.3.38.0</unityversion>
<androidPackages> <androidPackages>
<androidPackage spec="com.fyber:marketplace-sdk:8.2.2"> <androidPackage spec="com.fyber:marketplace-sdk:8.2.4">
<repositories> <repositories>
<repository>https://repo.maven.apache.org/maven2/</repository> <repository>https://repo.maven.apache.org/maven2/</repository>
</repositories> </repositories>
@ -9,7 +9,7 @@
</androidPackages> </androidPackages>
<androidPackages> <androidPackages>
<androidPackage spec="com.ironsource.adapters:fyberadapter:4.3.24"> <androidPackage spec="com.ironsource.adapters:fyberadapter:4.3.28">
<repositories> <repositories>
<repository>https://android-sdk.is.com/</repository> <repository>https://android-sdk.is.com/</repository>
</repositories> </repositories>
@ -17,7 +17,7 @@
</androidPackages> </androidPackages>
<!-- <iosPods> <!-- <iosPods>
<iosPod name="IronSourceFyberAdapter" version="4.3.28.0"> <iosPod name="IronSourceFyberAdapter" version="4.3.31.1">
<sources> <sources>
<source>https://github.com/CocoaPods/Specs</source> <source>https://github.com/CocoaPods/Specs</source>
</sources> </sources>

View File

@ -1,7 +1,7 @@
<dependencies> <dependencies>
<unityversion>4.3.16.0</unityversion> <unityversion>4.3.19.0</unityversion>
<androidPackages> <androidPackages>
<androidPackage spec="com.mbridge.msdk.oversea:newinterstitial:16.4.41"> <androidPackage spec="com.mbridge.msdk.oversea:newinterstitial:16.5.21">
<repositories> <repositories>
<repository>https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea/</repository> <repository>https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea/</repository>
</repositories> </repositories>
@ -9,7 +9,7 @@
</androidPackages> </androidPackages>
<androidPackages> <androidPackages>
<androidPackage spec="com.mbridge.msdk.oversea:reward:16.4.41"> <androidPackage spec="com.mbridge.msdk.oversea:reward:16.5.21">
<repositories> <repositories>
<repository>https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea/</repository> <repository>https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea/</repository>
</repositories> </repositories>
@ -17,7 +17,7 @@
</androidPackages> </androidPackages>
<androidPackages> <androidPackages>
<androidPackage spec="com.mbridge.msdk.oversea:mbbanner:16.4.41"> <androidPackage spec="com.mbridge.msdk.oversea:mbbanner:16.5.21">
<repositories> <repositories>
<repository>https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea/</repository> <repository>https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea/</repository>
</repositories> </repositories>
@ -25,7 +25,7 @@
</androidPackages> </androidPackages>
<androidPackages> <androidPackages>
<androidPackage spec="com.mbridge.msdk.oversea:mbbid:16.4.41"> <androidPackage spec="com.mbridge.msdk.oversea:mbbid:16.5.21">
<repositories> <repositories>
<repository>https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea/</repository> <repository>https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea/</repository>
</repositories> </repositories>
@ -41,7 +41,7 @@
</androidPackages> </androidPackages>
<androidPackages> <androidPackages>
<androidPackage spec="com.ironsource.adapters:mintegraladapter:4.3.16"> <androidPackage spec="com.ironsource.adapters:mintegraladapter:4.3.19">
<repositories> <repositories>
<repository>https://android-sdk.is.com/</repository> <repository>https://android-sdk.is.com/</repository>
</repositories> </repositories>
@ -49,7 +49,7 @@
</androidPackages> </androidPackages>
<!-- <iosPods> <!-- <iosPods>
<iosPod name="IronSourceMintegralAdapter" version="4.3.15.0"> <iosPod name="IronSourceMintegralAdapter" version="4.3.18.0">
<sources> <sources>
<source>https://github.com/CocoaPods/Specs</source> <source>https://github.com/CocoaPods/Specs</source>
</sources> </sources>

View File

@ -1,21 +1,21 @@
<dependencies> <dependencies>
<unityversion>4.3.22.0</unityversion> <unityversion>4.3.27.0</unityversion>
<androidPackages> <androidPackages>
<androidPackage spec="com.ironsource.adapters:pangleadapter:4.3.17"> <androidPackage spec="com.ironsource.adapters:pangleadapter:4.3.22">
<repositories> <repositories>
<repository>https://android-sdk.is.com/</repository> <repository>https://android-sdk.is.com/</repository>
</repositories> </repositories>
</androidPackage> </androidPackage>
</androidPackages> </androidPackages>
<androidPackages> <androidPackages>
<androidPackage spec="com.pangle.global:ads-sdk:5.0.0.8"> <androidPackage spec="com.pangle.global:ads-sdk:5.5.0.5">
<repositories> <repositories>
<repository>https://artifact.bytedance.com/repository/pangle/</repository> <repository>https://artifact.bytedance.com/repository/pangle/</repository>
</repositories> </repositories>
</androidPackage> </androidPackage>
</androidPackages> </androidPackages>
<!-- <iosPods> <!-- <iosPods>
<iosPod name="IronSourcePangleAdapter" version="4.3.19.0"> <iosPod name="IronSourcePangleAdapter" version="4.3.24.0">
<sources> <sources>
<source>https://github.com/CocoaPods/Specs</source> <source>https://github.com/CocoaPods/Specs</source>
</sources> </sources>

View File

@ -1,21 +1,21 @@
<dependencies> <dependencies>
<unityversion>4.1.29.0</unityversion> <unityversion>4.1.30.3</unityversion>
<androidPackages> <androidPackages>
<androidPackage spec="com.ironsource.adapters:tapjoyadapter:4.1.24"> <androidPackage spec="com.ironsource.adapters:tapjoyadapter:4.1.25">
<repositories> <repositories>
<repository>https://android-sdk.is.com/</repository> <repository>https://android-sdk.is.com/</repository>
</repositories> </repositories>
</androidPackage> </androidPackage>
</androidPackages> </androidPackages>
<androidPackages> <androidPackages>
<androidPackage spec="com.tapjoy:tapjoy-android-sdk:12.11.1"> <androidPackage spec="com.tapjoy:tapjoy-android-sdk:13.0.1">
<repositories> <repositories>
<repository>https://sdk.tapjoy.com/</repository> <repository>https://sdk.tapjoy.com/</repository>
</repositories> </repositories>
</androidPackage> </androidPackage>
</androidPackages> </androidPackages>
<!-- <iosPods> <!-- <iosPods>
<iosPod name="IronSourceTapjoyAdapter" version="4.1.24.0"> <iosPod name="IronSourceTapjoyAdapter" version="4.1.25.3">
<sources> <sources>
<source>https://github.com/CocoaPods/Specs</source> <source>https://github.com/CocoaPods/Specs</source>
</sources> </sources>

View File

@ -1,14 +1,14 @@
<dependencies> <dependencies>
<unityversion>4.3.32.0</unityversion> <unityversion>4.3.38.0</unityversion>
<androidPackages> <androidPackages>
<androidPackage spec="com.ironsource.adapters:unityadsadapter:4.3.27"> <androidPackage spec="com.ironsource.adapters:unityadsadapter:4.3.33">
<repositories> <repositories>
<repository>https://android-sdk.is.com/</repository> <repository>https://android-sdk.is.com/</repository>
</repositories> </repositories>
</androidPackage> </androidPackage>
</androidPackages> </androidPackages>
<androidPackages> <androidPackages>
<androidPackage spec="com.unity3d.ads:unity-ads:4.6.1"> <androidPackage spec="com.unity3d.ads:unity-ads:4.9.1">
<repositories> <repositories>
<repository>https://maven.google.com/</repository> <repository>https://maven.google.com/</repository>
</repositories> </repositories>
@ -16,7 +16,7 @@
</androidPackages> </androidPackages>
<!-- <iosPods> <!-- <iosPods>
<iosPod name="IronSourceUnityAdsAdapter" version="4.3.28.0"> <iosPod name="IronSourceUnityAdsAdapter" version="4.3.33.0">
<sources> <sources>
<source>https://github.com/CocoaPods/Specs</source> <source>https://github.com/CocoaPods/Specs</source>
</sources> </sources>

View File

@ -1,7 +1,7 @@
<dependencies> <dependencies>
<unityversion>4.3.33.0</unityversion> <unityversion>4.3.37.0</unityversion>
<androidPackages> <androidPackages>
<androidPackage spec="com.vungle:publisher-sdk-android:6.12.1"> <androidPackage spec="com.vungle:vungle-ads:7.0.0">
<repositories> <repositories>
<repository>https://jitpack.io/</repository> <repository>https://jitpack.io/</repository>
</repositories> </repositories>
@ -9,7 +9,7 @@
</androidPackages> </androidPackages>
<androidPackages> <androidPackages>
<androidPackage spec="com.ironsource.adapters:vungleadapter:4.3.20"> <androidPackage spec="com.ironsource.adapters:vungleadapter:4.3.22">
<repositories> <repositories>
<repository>https://android-sdk.is.com/</repository> <repository>https://android-sdk.is.com/</repository>
</repositories> </repositories>
@ -17,7 +17,7 @@
</androidPackages> </androidPackages>
<!-- <iosPods> <!-- <iosPods>
<iosPod name="IronSourceVungleAdapter" version="4.3.26.0"> <iosPod name="IronSourceVungleAdapter" version="4.3.29.0">
<sources> <sources>
<source>https://github.com/CocoaPods/Specs</source> <source>https://github.com/CocoaPods/Specs</source>
</sources> </sources>

View File

@ -220,7 +220,7 @@ public class IronSourceDependenciesManager : EditorWindow
ProviderInfo info = new ProviderInfo(); ProviderInfo info = new ProviderInfo();
object providerXML; object providerXML;
var lowerCaseItem = item.Key.ToLower(); var lowerCaseItem = item.Key.ToLower(new System.Globalization.CultureInfo("en"));
linksDictionary.TryGetValue(lowerCaseItem, out providerXML); linksDictionary.TryGetValue(lowerCaseItem, out providerXML);

View File

@ -22,7 +22,7 @@ public class IronSourceManifestProcessor : IPreprocessBuild
private const string AD_ID_PERMISSION_ATTR = "com.google.android.gms.permission.AD_ID"; private const string AD_ID_PERMISSION_ATTR = "com.google.android.gms.permission.AD_ID";
private const string MANIFEST_PERMISSION = "uses-permission"; private const string MANIFEST_PERMISSION = "uses-permission";
private const string MANIFEST_META_DATA = "meta-data"; private const string MANIFEST_META_DATA = "meta-data";
private const string IRONSOURCE_MANIFEST_PATH = "IronSource/Plugins/Android/IronSource.plugin/AndroidManifest.xml"; private const string IRONSOURCE_MANIFEST_PATH = "IronSource/Plugins/Android/IronSource.androidlib/AndroidManifest.xml";
private string manifestPath = ""; private string manifestPath = "";
private XNamespace ns = "http://schemas.android.com/apk/res/android"; private XNamespace ns = "http://schemas.android.com/apk/res/android";

View File

@ -1,8 +1,8 @@
<dependencies> <dependencies>
<unityversion>7.3.0.1</unityversion> <unityversion>7.5.1</unityversion>
<androidPackages> <androidPackages>
<androidPackage spec="com.ironsource.sdk:mediationsdk:7.3.0.1"> <androidPackage spec="com.ironsource.sdk:mediationsdk:7.5.1">
<repositories> <repositories>
<repository>https://android-sdk.is.com/</repository> <repository>https://android-sdk.is.com/</repository>
</repositories> </repositories>
@ -26,7 +26,7 @@
</androidPackages> </androidPackages>
<!-- <iosPods> <!-- <iosPods>
<iosPod name="IronSourceSDK" version="7.3.0.0"> <iosPod name="IronSourceSDK" version="7.5.0.0">
<sources> <sources>
<source>https://github.com/CocoaPods/Specs</source> <source>https://github.com/CocoaPods/Specs</source>
</sources> </sources>

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 78bb03eee4d26fb4da4755f7e6529784
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,28 @@
fileFormatVersion: 2
guid: 718f851be2f4c4ee9b4c748b225a7ea2
folderAsset: yes
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
defineConstraints: []
isPreloaded: 0
isOverridable: 0
isExplicitlyReferenced: 0
validateReferences: 1
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.ironsource.unity">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application>
<!-- AdMob -->
<!--As Requiered By Admob please add your App ID-->
<!--<meta-data-->
<!--android:name="com.google.android.gms.ads.APPLICATION_ID"-->
<!--android:value="YOUR_ADMOB_APP_ID"/>-->
</application>
</manifest>

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 43f2c8ee7c4303948bbd5f896c515318 guid: e46e3d39a8bec48d9ae81d0008842ad4
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a5936d92d17be4fde864e068dd13d202
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: cbe75846a2b4da1459371181319ce8e3 guid: f10a601320ff74e1e96ecfd77be278c5
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2

View File

@ -0,0 +1,2 @@
target=android-9
android.library=true

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: f6d91e910c9af49d7a1d0254340e9dca
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,22 @@
using System;
/// <summary>
/// Represents the available formats for displaying advertisements.
/// </summary>
public enum AdFormat
{
/// <summary>
/// Represents a rewarded video ad format.
/// </summary>
RewardedVideo,
/// <summary>
/// Represents an interstitial ad format.
/// </summary>
Interstitial,
/// <summary>
/// Represents a banner ad format.
/// </summary>
Banner
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 8124546645b9349f7858c4510ea7de78
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -2,15 +2,20 @@
using UnityEngine; using UnityEngine;
using System.Collections; using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using System.Globalization;
using System; using System;
public class AndroidAgent : IronSourceIAgent public class AndroidAgent : IronSourceIAgent
{ {
private static AndroidJavaObject _androidBridge; static AndroidJavaObject _androidBridge;
private readonly static string AndroidBridge = "com.ironsource.unity.androidbridge.AndroidBridge"; readonly static string AndroidBridge = "com.ironsource.unity.androidbridge.AndroidBridge";
private const string REWARD_AMOUNT = "reward_amount"; const string REWARD_AMOUNT = "reward_amount";
private const string REWARD_NAME = "reward_name"; const string REWARD_NAME = "reward_name";
private const string PLACEMENT_NAME = "placement_name"; const string PLACEMENT_NAME = "placement_name";
const string WATERFALL_CONFIG_FLOOR = "floor";
const string WATERFALL_CONFIG_CEILING = "ceiling";
const string WATERFALL_CONFIG_API = "setWaterfallConfiguration";
public AndroidAgent () public AndroidAgent ()
{ {
@ -34,6 +39,48 @@ public class AndroidAgent : IronSourceIAgent
//******************* Base API *******************// //******************* Base API *******************//
/// <summary>
/// Allows publishers to set configurations for a waterfall of a given ad type.
/// </summary>
/// <param name="waterfallConfiguration">The configuration for the given ad types waterfall. </param>
/// <param name="adFormat">The AdFormat for which to configure the waterfall.</param>
public void SetWaterfallConfiguration(WaterfallConfiguration waterfallConfiguration, AdFormat adFormat)
{
var ceiling = waterfallConfiguration.Ceiling;
var floor = waterfallConfiguration.Floor;
var dict = new Dictionary<string, string>();
if (ceiling.HasValue)
{
dict.Add(WATERFALL_CONFIG_CEILING, ceiling.Value.ToString(CultureInfo.InvariantCulture));
}
if (floor.HasValue)
{
dict.Add(WATERFALL_CONFIG_FLOOR, floor.Value.ToString(CultureInfo.InvariantCulture));
}
var json = IronSourceJSON.Json.Serialize(dict);
string stringAdFormat;
switch (adFormat)
{
case AdFormat.RewardedVideo:
stringAdFormat = "REWARDED_VIDEO";
break;
case AdFormat.Interstitial:
stringAdFormat = "INTERSTITIAL";
break;
case AdFormat.Banner:
stringAdFormat = "BANNER";
break;
default:
return;
}
getBridge().Call(WATERFALL_CONFIG_API, json, stringAdFormat);
}
public void onApplicationPause (bool pause) public void onApplicationPause (bool pause)
{ {
if (pause) if (pause)

View File

@ -7,7 +7,7 @@ public class IronSource : IronSourceIAgent
{ {
private IronSourceIAgent _platformAgent; private IronSourceIAgent _platformAgent;
private static IronSource _instance; private static IronSource _instance;
public static string UNITY_PLUGIN_VERSION = "7.3.0.1-r"; public static string UNITY_PLUGIN_VERSION = "7.5.1-r";
private static bool isUnsupportedPlatform; private static bool isUnsupportedPlatform;
private IronSource() private IronSource()
@ -67,6 +67,16 @@ public class IronSource : IronSourceIAgent
//******************* Base API *******************// //******************* Base API *******************//
/// <summary>
/// Allows publishers to set configurations for a waterfall of a given ad type.
/// </summary>
/// <param name="waterfallConfiguration">The configuration for the given ad types waterfall. </param>
/// <param name="adFormat">The AdFormat for which to configure the waterfall.</param>
public void SetWaterfallConfiguration(WaterfallConfiguration waterfallConfiguration, AdFormat adFormat)
{
_platformAgent.SetWaterfallConfiguration(waterfallConfiguration, adFormat);
}
public void onApplicationPause(bool pause) public void onApplicationPause(bool pause)
{ {
_platformAgent.onApplicationPause(pause); _platformAgent.onApplicationPause(pause);
@ -256,22 +266,26 @@ public class IronSource : IronSourceIAgent
//******************* Offerwall API *******************// //******************* Offerwall API *******************//
[Obsolete("This API call is for the ironSource Offerwall, which will soon be deprecated. Please migrate to the Tapjoy Offerwall using the 'Offerwall migration checklist'.", false)]
public void showOfferwall() public void showOfferwall()
{ {
_platformAgent.showOfferwall(); _platformAgent.showOfferwall();
} }
public void showOfferwall(string placementName) [Obsolete("This API call is for the ironSource Offerwall, which will soon be deprecated. Please migrate to the Tapjoy Offerwall using the 'Offerwall migration checklist'.", false)]
public void showOfferwall(string placementName)
{ {
_platformAgent.showOfferwall(placementName); _platformAgent.showOfferwall(placementName);
} }
public void getOfferwallCredits() [Obsolete("This API call is for the ironSource Offerwall, which will soon be deprecated. Please migrate to the Tapjoy Offerwall using the 'Offerwall migration checklist'.", false)]
public void getOfferwallCredits()
{ {
_platformAgent.getOfferwallCredits(); _platformAgent.getOfferwallCredits();
} }
public bool isOfferwallAvailable() [Obsolete("This API call is for the ironSource Offerwall, which will soon be deprecated. Please migrate to the Tapjoy Offerwall using the 'Offerwall migration checklist'.", false)]
public bool isOfferwallAvailable()
{ {
return _platformAgent.isOfferwallAvailable(); return _platformAgent.isOfferwallAvailable();
} }

View File

@ -83,11 +83,17 @@ public class IronSourceEvents : MonoBehaviour
[Obsolete("This API has been deprecated as of SDK 7.3.0.1", false)] [Obsolete("This API has been deprecated as of SDK 7.3.0.1", false)]
public static event Action<string, IronSourceError> onInterstitialAdShowFailedDemandOnlyEvent; public static event Action<string, IronSourceError> onInterstitialAdShowFailedDemandOnlyEvent;
[Obsolete("This API call is for the ironSource Offerwall, which will soon be deprecated. Please migrate to the Tapjoy Offerwall using the 'Offerwall migration checklist'.", false)]
public static event Action<bool> onOfferwallAvailableEvent; public static event Action<bool> onOfferwallAvailableEvent;
[Obsolete("This API call is for the ironSource Offerwall, which will soon be deprecated. Please migrate to the Tapjoy Offerwall using the 'Offerwall migration checklist'.", false)]
public static event Action onOfferwallOpenedEvent; public static event Action onOfferwallOpenedEvent;
[Obsolete("This API call is for the ironSource Offerwall, which will soon be deprecated. Please migrate to the Tapjoy Offerwall using the 'Offerwall migration checklist'.", false)]
public static event Action<Dictionary<string, object>> onOfferwallAdCreditedEvent; public static event Action<Dictionary<string, object>> onOfferwallAdCreditedEvent;
[Obsolete("This API call is for the ironSource Offerwall, which will soon be deprecated. Please migrate to the Tapjoy Offerwall using the 'Offerwall migration checklist'.", false)]
public static event Action<IronSourceError> onGetOfferwallCreditsFailedEvent; public static event Action<IronSourceError> onGetOfferwallCreditsFailedEvent;
[Obsolete("This API call is for the ironSource Offerwall, which will soon be deprecated. Please migrate to the Tapjoy Offerwall using the 'Offerwall migration checklist'.", false)]
public static event Action onOfferwallClosedEvent; public static event Action onOfferwallClosedEvent;
[Obsolete("This API call is for the ironSource Offerwall, which will soon be deprecated. Please migrate to the Tapjoy Offerwall using the 'Offerwall migration checklist'.", false)]
public static event Action<IronSourceError> onOfferwallShowFailedEvent; public static event Action<IronSourceError> onOfferwallShowFailedEvent;
[Obsolete("This API has been deprecated as of SDK 7.3.0. Please use the alternate API in IronSourceBannerEvents listener instead.", false)] [Obsolete("This API has been deprecated as of SDK 7.3.0. Please use the alternate API in IronSourceBannerEvents listener instead.", false)]
@ -1643,6 +1649,7 @@ public class IronSourceEvents : MonoBehaviour
private static event Action _onOfferwallOpenedEvent; private static event Action _onOfferwallOpenedEvent;
[Obsolete("This API call is for the ironSource Offerwall, which will soon be deprecated. Please migrate to the Tapjoy Offerwall using the 'Offerwall migration checklist'.", false)]
public static event Action onOfferwallOpenedEvent public static event Action onOfferwallOpenedEvent
{ {
add add
@ -1672,6 +1679,7 @@ public class IronSourceEvents : MonoBehaviour
private static event Action<IronSourceError> _onOfferwallShowFailedEvent; private static event Action<IronSourceError> _onOfferwallShowFailedEvent;
[Obsolete("This API call is for the ironSource Offerwall, which will soon be deprecated. Please migrate to the Tapjoy Offerwall using the 'Offerwall migration checklist'.", false)]
public static event Action<IronSourceError> onOfferwallShowFailedEvent public static event Action<IronSourceError> onOfferwallShowFailedEvent
{ {
add add
@ -1702,6 +1710,7 @@ public class IronSourceEvents : MonoBehaviour
private static event Action _onOfferwallClosedEvent; private static event Action _onOfferwallClosedEvent;
[Obsolete("This API call is for the ironSource Offerwall, which will soon be deprecated. Please migrate to the Tapjoy Offerwall using the 'Offerwall migration checklist'.", false)]
public static event Action onOfferwallClosedEvent public static event Action onOfferwallClosedEvent
{ {
add add
@ -1731,6 +1740,7 @@ public class IronSourceEvents : MonoBehaviour
private static event Action<IronSourceError> _onGetOfferwallCreditsFailedEvent; private static event Action<IronSourceError> _onGetOfferwallCreditsFailedEvent;
[Obsolete("This API call is for the ironSource Offerwall, which will soon be deprecated. Please migrate to the Tapjoy Offerwall using the 'Offerwall migration checklist'.", false)]
public static event Action<IronSourceError> onGetOfferwallCreditsFailedEvent public static event Action<IronSourceError> onGetOfferwallCreditsFailedEvent
{ {
add add
@ -1762,6 +1772,7 @@ public class IronSourceEvents : MonoBehaviour
private static event Action<Dictionary<string, object>> _onOfferwallAdCreditedEvent; private static event Action<Dictionary<string, object>> _onOfferwallAdCreditedEvent;
[Obsolete("This API call is for the ironSource Offerwall, which will soon be deprecated. Please migrate to the Tapjoy Offerwall using the 'Offerwall migration checklist'.", false)]
public static event Action<Dictionary<string, object>> onOfferwallAdCreditedEvent public static event Action<Dictionary<string, object>> onOfferwallAdCreditedEvent
{ {
add add
@ -1789,6 +1800,7 @@ public class IronSourceEvents : MonoBehaviour
private static event Action<bool> _onOfferwallAvailableEvent; private static event Action<bool> _onOfferwallAvailableEvent;
[Obsolete("This API call is for the ironSource Offerwall, which will soon be deprecated. Please migrate to the Tapjoy Offerwall using the 'Offerwall migration checklist'.", false)]
public static event Action<bool> onOfferwallAvailableEvent public static event Action<bool> onOfferwallAvailableEvent
{ {
add add

View File

@ -4,6 +4,13 @@ public interface IronSourceIAgent
{ {
//******************* Base API *******************// //******************* Base API *******************//
/// <summary>
/// Allows publishers to set configurations for a waterfall of a given ad type.
/// </summary>
/// <param name="waterfallConfiguration">The configuration for the given ad types waterfall. </param>
/// <param name="adFormat">The AdFormat for which to configure the waterfall.</param>
void SetWaterfallConfiguration(WaterfallConfiguration waterfallConfiguration, AdFormat adFormat);
void onApplicationPause(bool pause); void onApplicationPause(bool pause);
string getAdvertiserId(); string getAdvertiserId();

View File

@ -11,6 +11,15 @@ public class UnsupportedPlatformAgent : IronSourceIAgent
#region IronSourceAgent implementation #region IronSourceAgent implementation
/// <summary>
/// This function is not supported on the current platform and does nothing.
/// </summary>
/// <param name="waterfallConfiguration">The configuration for the given ad types waterfall. </param>
/// <param name="adFormat">The AdFormat for which to configure the waterfall.</param>
public void SetWaterfallConfiguration(WaterfallConfiguration waterfallConfiguration, AdFormat adFormat)
{
}
public void start() public void start()
{ {
} }

View File

@ -0,0 +1,92 @@
using System.Collections.Generic;
using System;
/// <summary>
/// Configuration class which allows users to customize or filter a Waterfall.
/// </summary>
public class WaterfallConfiguration
{
readonly double? ceiling;
readonly double? floor;
/// <summary>
/// Gets the ceiling value.
/// </summary>
public double? Ceiling { get { return ceiling; } }
/// <summary>
/// Gets the floor value.
/// </summary>
public double? Floor { get { return floor; } }
/// <summary>
/// Initializes a new instance of the WaterfallConfiguration class.
/// </summary>
/// <param name="ceiling">The ceiling value.</param>
/// <param name="floor">The floor value.</param>
private WaterfallConfiguration(double? ceiling, double? floor)
{
this.ceiling = ceiling;
this.floor = floor;
}
/// <summary>
/// Gets a builder for creating instances of WaterfallConfiguration.
/// </summary>
/// <returns>The WaterfallConfigurationBuilder.</returns>
public static WaterfallConfigurationBuilder Builder()
{
return new WaterfallConfigurationBuilder();
}
/// <summary>
/// Creates an empty instance of WaterfallConfiguration.
/// </summary>
/// <returns>The empty WaterfallConfiguration.</returns>
public static WaterfallConfiguration Empty()
{
return new WaterfallConfiguration(double.NaN, double.NaN);
}
/// <summary>
/// Builder class which to create a WaterfallConfiguration.
/// </summary>
public class WaterfallConfigurationBuilder
{
double? ceiling;
double? floor;
internal WaterfallConfigurationBuilder() {}
/// <summary>
/// Sets the ceiling value.
/// </summary>
/// <param name="ceiling">The ceiling value.</param>
/// <returns>The WaterfallConfigurationBuilder.</returns>
public WaterfallConfigurationBuilder SetCeiling(double ceiling)
{
this.ceiling = ceiling;
return this;
}
/// <summary>
/// Sets the floor value.
/// </summary>
/// <param name="floor">The floor value.</param>
/// <returns>The WaterfallConfigurationBuilder.</returns>
public WaterfallConfigurationBuilder SetFloor(double floor)
{
this.floor = floor;
return this;
}
/// <summary>
/// Builds an instance of WaterfallConfiguration based on the configured values.
/// </summary>
/// <returns>The created WaterfallConfiguration.</returns>
public WaterfallConfiguration Build()
{
return new WaterfallConfiguration(ceiling, floor);
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 354652886a99945cba942b569effe7bb
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,508 +1,533 @@
#if UNITY_IPHONE || UNITY_IOS #if UNITY_IPHONE || UNITY_IOS
using UnityEngine; using UnityEngine;
using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using System.Runtime.InteropServices; using System.Runtime.InteropServices;
using System.Linq;
using System; using System;
using System.Globalization; using System.Globalization;
// public class iOSAgent : IronSourceIAgent // public class iOSAgent : IronSourceIAgent
// { // {
// [DllImport("__Internal")]
// private static extern void CFSetPluginData(string pluginType, string pluginVersion, string pluginFrameworkVersion);
// [DllImport("__Internal")] // struct IOSWaterfallConfiguration
// private static extern string CFGetAdvertiserId(); // {
// public double Floor;
// public double Ceiling;
// }
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFValidateIntegration(); // private static extern void LPPSetWaterfallConfiguration(IOSWaterfallConfiguration configurationParams, AdFormat adFormat);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFShouldTrackNetworkState(bool track); // private static extern void CFSetPluginData(string pluginType, string pluginVersion, string pluginFrameworkVersion);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern bool CFSetDynamicUserId(string dynamicUserId); // private static extern string CFGetAdvertiserId();
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFSetAdaptersDebug(bool enabled); // private static extern void CFValidateIntegration();
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFSetMetaData(string key, string value); // private static extern void CFShouldTrackNetworkState(bool track);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFSetMetaDataWithValues(string key, params string[] values); // private static extern bool CFSetDynamicUserId(string dynamicUserId);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern string CFGetConversionValue(); // private static extern void CFSetAdaptersDebug(bool enabled);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFSetManualLoadRewardedVideo(bool isOn); // private static extern void CFSetMetaData(string key, string value);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFSetNetworkData(string networkKey, string networkData); // private static extern void CFSetMetaDataWithValues(string key, params string[] values);
// delegate void ISUnityPauseGame(bool pause); // [DllImport("__Internal")]
// [DllImport("__Internal")] // private static extern string CFGetConversionValue();
// private static extern void RegisterPauseGameFunction(bool pasue);
// [DllImport("__Internal")]
// private static extern void CFSetManualLoadRewardedVideo(bool isOn);
// //******************* SDK Init *******************// // [DllImport("__Internal")]
// private static extern void CFSetNetworkData(string networkKey, string networkData);
// [DllImport("__Internal")] // delegate void ISUnityPauseGame(bool pause);
// private static extern void CFSetUserId(string userId); // [DllImport("__Internal")]
// private static extern void RegisterPauseGameFunction(bool pasue);
// [DllImport("__Internal")]
// private static extern void CFInit(string appKey);
// [DllImport("__Internal")] // //******************* SDK Init *******************//
// private static extern void CFInitWithAdUnits(string appKey, params string[] adUnits);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFInitISDemandOnly(string appKey, params string[] adUnits); // private static extern void CFSetUserId(string userId);
// //******************* RewardedVideo API *******************// // [DllImport("__Internal")]
// private static extern void CFInit(string appKey);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFLoadRewardedVideo(); // private static extern void CFInitWithAdUnits(string appKey, params string[] adUnits);
// [DllImport("__Internal")]
// private static extern void CFInitISDemandOnly(string appKey, params string[] adUnits);
// [DllImport("__Internal")] // //******************* RewardedVideo API *******************//
// private static extern void CFShowRewardedVideo();
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFShowRewardedVideoWithPlacementName(string placementName); // private static extern void CFLoadRewardedVideo();
// [DllImport("__Internal")]
// private static extern bool CFIsRewardedVideoAvailable();
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern bool CFIsRewardedVideoPlacementCapped(string placementName); // private static extern void CFShowRewardedVideo();
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern string CFGetPlacementInfo(string placementName); // private static extern void CFShowRewardedVideoWithPlacementName(string placementName);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFSetRewardedVideoServerParameters(string jsonString); // private static extern bool CFIsRewardedVideoAvailable();
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFClearRewardedVideoServerParameters(); // private static extern bool CFIsRewardedVideoPlacementCapped(string placementName);
// //******************* RewardedVideo DemandOnly API *******************// // [DllImport("__Internal")]
// private static extern string CFGetPlacementInfo(string placementName);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFShowISDemandOnlyRewardedVideo(string instanceId); // private static extern void CFSetRewardedVideoServerParameters(string jsonString);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFLoadISDemandOnlyRewardedVideo(string instanceId); // private static extern void CFClearRewardedVideoServerParameters();
// [DllImport("__Internal")] // //******************* RewardedVideo DemandOnly API *******************//
// private static extern bool CFIsDemandOnlyRewardedVideoAvailable(string instanceId);
// //******************* Interstitial API *******************// // [DllImport("__Internal")]
// private static extern void CFShowISDemandOnlyRewardedVideo(string instanceId);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFLoadInterstitial(); // private static extern void CFLoadISDemandOnlyRewardedVideo(string instanceId);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFShowInterstitial(); // private static extern bool CFIsDemandOnlyRewardedVideoAvailable(string instanceId);
// [DllImport("__Internal")] // //******************* Interstitial API *******************//
// private static extern void CFShowInterstitialWithPlacementName(string placementName);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern bool CFIsInterstitialReady(); // private static extern void CFLoadInterstitial();
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern bool CFIsInterstitialPlacementCapped(string placementName); // private static extern void CFShowInterstitial();
// //******************* Interstitial DemandOnly API *******************// // [DllImport("__Internal")]
// private static extern void CFShowInterstitialWithPlacementName(string placementName);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFLoadISDemandOnlyInterstitial(string instanceId); // private static extern bool CFIsInterstitialReady();
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFShowISDemandOnlyInterstitial(string instanceId); // private static extern bool CFIsInterstitialPlacementCapped(string placementName);
// [DllImport("__Internal")] // //******************* Interstitial DemandOnly API *******************//
// private static extern bool CFIsDemandOnlyInterstitialReady(string instanceId);
// [DllImport("__Internal")]
// private static extern void CFLoadISDemandOnlyInterstitial(string instanceId);
// //******************* Offerwall API *******************// // [DllImport("__Internal")]
// private static extern void CFShowISDemandOnlyInterstitial(string instanceId);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFShowOfferwall(); // private static extern bool CFIsDemandOnlyInterstitialReady(string instanceId);
// [DllImport("__Internal")]
// private static extern void CFShowOfferwallWithPlacementName(string placementName);
// [DllImport("__Internal")] // //******************* Offerwall API *******************//
// private static extern void CFGetOfferwallCredits();
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern bool CFIsOfferwallAvailable(); // private static extern void CFShowOfferwall();
// //******************* Banner API *******************// // [DllImport("__Internal")]
// private static extern void CFShowOfferwallWithPlacementName(string placementName);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFLoadBanner(string description, int width, int height, int position, string placementName, bool isAdaptive); // private static extern void CFGetOfferwallCredits();
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFDestroyBanner(); // private static extern bool CFIsOfferwallAvailable();
// [DllImport("__Internal")] // //******************* Banner API *******************//
// private static extern void CFDisplayBanner();
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFHideBanner(); // private static extern void CFLoadBanner(string description, int width, int height, int position, string placementName, bool isAdaptive);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern bool CFIsBannerPlacementCapped(string placementName); // private static extern void CFDestroyBanner();
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFSetSegment(string json); // private static extern void CFDisplayBanner();
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFSetConsent(bool consent); // private static extern void CFHideBanner();
// //******************* ConsentView API *******************// // [DllImport("__Internal")]
// private static extern bool CFIsBannerPlacementCapped(string placementName);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFLoadConsentViewWithType(string consentViewType); // private static extern void CFSetSegment(string json);
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFShowConsentViewWithType(string consentViewType); // private static extern void CFSetConsent(bool consent);
// //******************* ILRD API *******************// // //******************* ConsentView API *******************//
// [DllImport("__Internal")] // [DllImport("__Internal")]
// private static extern void CFSetAdRevenueData(string dataSource, string impressionData); // private static extern void CFLoadConsentViewWithType(string consentViewType);
// //******************* TestSuite API *******************// // [DllImport("__Internal")]
// private static extern void CFShowConsentViewWithType(string consentViewType);
// [DllImport("__Internal")] // //******************* ILRD API *******************//
// private static extern void CFLaunchTestSuite();
// public iOSAgent() // [DllImport("__Internal")]
// { // private static extern void CFSetAdRevenueData(string dataSource, string impressionData);
// }
// #region IronSourceIAgent implementation // //******************* TestSuite API *******************//
// //******************* Base API *******************// // [DllImport("__Internal")]
// private static extern void CFLaunchTestSuite();
// public void onApplicationPause(bool pause) // public iOSAgent()
// { // {
// }
// } // #region IronSourceIAgent implementation
// public string getAdvertiserId() // //******************* Base API *******************//
// {
// return CFGetAdvertiserId();
// }
// public void validateIntegration() // /// <summary>
// { // /// Allows publishers to set configurations for a waterfall of a given ad type.
// CFValidateIntegration(); // /// </summary>
// } // /// <param name="adFormat">The AdFormat for which to configure the waterfall.</param>
// /// <param name="waterfallConfiguration">The configuration for the given ad types waterfall. </param>
// public void SetWaterfallConfiguration(WaterfallConfiguration waterfallConfiguration, AdFormat adFormat)
// {
// var config = new IOSWaterfallConfiguration
// {
// Floor = waterfallConfiguration.Floor ?? 0.0,
// Ceiling = waterfallConfiguration.Ceiling ?? 0.0
// };
// public void shouldTrackNetworkState(bool track) // LPPSetWaterfallConfiguration(config, adFormat);
// { // }
// CFShouldTrackNetworkState(track);
// }
// public bool setDynamicUserId(string dynamicUserId) // public void onApplicationPause(bool pause)
// { // {
// return CFSetDynamicUserId(dynamicUserId);
// }
// public void setAdaptersDebug(bool enabled) // }
// {
// CFSetAdaptersDebug(enabled);
// }
// public void setMetaData(string key, params string[] values) // public string getAdvertiserId()
// { // {
// CFSetMetaDataWithValues(key, values); // return CFGetAdvertiserId();
// } // }
// public void setMetaData(string key, string value) // public void validateIntegration()
// { // {
// CFSetMetaData(key, value); // CFValidateIntegration();
// } // }
// public int? getConversionValue() // public void shouldTrackNetworkState(bool track)
// { // {
// CultureInfo invCulture = CultureInfo.InvariantCulture; // CFShouldTrackNetworkState(track);
// int parsedInt; // }
// if (int.TryParse(string.Format(invCulture, "{0}", CFGetConversionValue()), NumberStyles.Any, invCulture, out parsedInt))
// { // public bool setDynamicUserId(string dynamicUserId)
// return parsedInt; // {
// } // return CFSetDynamicUserId(dynamicUserId);
// }
// return null;
// } // public void setAdaptersDebug(bool enabled)
// {
// public void setManualLoadRewardedVideo(bool isOn) // CFSetAdaptersDebug(enabled);
// { // }
// CFSetManualLoadRewardedVideo(isOn);
// } // public void setMetaData(string key, params string[] values)
// {
// public void setNetworkData(string networkKey, string networkData) // CFSetMetaDataWithValues(key, values);
// { // }
// CFSetNetworkData(networkKey, networkData);
// } // public void setMetaData(string key, string value)
// {
// [AOT.MonoPInvokeCallback(typeof(ISUnityPauseGame))] // CFSetMetaData(key, value);
// public void SetPauseGame(bool pause) // }
// {
// RegisterPauseGameFunction(pause); // public int? getConversionValue()
// if (pause) // {
// { // CultureInfo invCulture = CultureInfo.InvariantCulture;
// setMetaData("IS_PAUSE_GAME_FLAG", "true"); // int parsedInt;
// } // if (int.TryParse(string.Format(invCulture, "{0}", CFGetConversionValue()), NumberStyles.Any, invCulture, out parsedInt))
// else // {
// { // return parsedInt;
// setMetaData("IS_PAUSE_GAME_FLAG", "false"); // }
// }
// } // return null;
// }
// //******************* SDK Init *******************//
// public void setManualLoadRewardedVideo(bool isOn)
// public void setUserId(string userId) // {
// { // CFSetManualLoadRewardedVideo(isOn);
// CFSetUserId(userId); // }
// }
// public void setNetworkData(string networkKey, string networkData)
// public void init(string appKey) // {
// { // CFSetNetworkData(networkKey, networkData);
// CFSetPluginData("Unity", IronSource.pluginVersion(), IronSource.unityVersion()); // }
// Debug.Log("IntegrationHelper pluginVersion: " + IronSource.pluginVersion());
// CFInit(appKey); // [AOT.MonoPInvokeCallback(typeof(ISUnityPauseGame))]
// } // public void SetPauseGame(bool pause)
// {
// public void init(string appKey, params string[] adUnits) // RegisterPauseGameFunction(pause);
// { // if (pause)
// CFSetPluginData("Unity", IronSource.pluginVersion(), IronSource.unityVersion()); // {
// Debug.Log("IntegrationHelper pluginVersion: " + IronSource.pluginVersion()); // setMetaData("IS_PAUSE_GAME_FLAG", "true");
// CFInitWithAdUnits(appKey, adUnits); // }
// } // else
// {
// public void initISDemandOnly(string appKey, params string[] adUnits) // setMetaData("IS_PAUSE_GAME_FLAG", "false");
// { // }
// CFSetPluginData("Unity", IronSource.pluginVersion(), IronSource.unityVersion()); // }
// Debug.Log("IntegrationHelper pluginVersion: " + IronSource.pluginVersion());
// CFInitISDemandOnly(appKey, adUnits); // //******************* SDK Init *******************//
// }
// public void setUserId(string userId)
// //******************* RewardedVideo API *******************// // {
// CFSetUserId(userId);
// public void loadRewardedVideo() // }
// {
// CFLoadRewardedVideo(); // public void init(string appKey)
// } // {
// CFSetPluginData("Unity", IronSource.pluginVersion(), IronSource.unityVersion());
// public void showRewardedVideo() // Debug.Log("IntegrationHelper pluginVersion: " + IronSource.pluginVersion());
// { // CFInit(appKey);
// CFShowRewardedVideo(); // }
// }
// public void init(string appKey, params string[] adUnits)
// public void showRewardedVideo(string placementName) // {
// { // CFSetPluginData("Unity", IronSource.pluginVersion(), IronSource.unityVersion());
// CFShowRewardedVideoWithPlacementName(placementName); // Debug.Log("IntegrationHelper pluginVersion: " + IronSource.pluginVersion());
// } // CFInitWithAdUnits(appKey, adUnits);
// }
// public bool isRewardedVideoAvailable()
// { // public void initISDemandOnly(string appKey, params string[] adUnits)
// return CFIsRewardedVideoAvailable(); // {
// } // CFSetPluginData("Unity", IronSource.pluginVersion(), IronSource.unityVersion());
// Debug.Log("IntegrationHelper pluginVersion: " + IronSource.pluginVersion());
// public bool isRewardedVideoPlacementCapped(string placementName) // CFInitISDemandOnly(appKey, adUnits);
// { // }
// return CFIsRewardedVideoPlacementCapped(placementName);
// } // //******************* RewardedVideo API *******************//
// public IronSourcePlacement getPlacementInfo(string placementName) // public void loadRewardedVideo()
// { // {
// IronSourcePlacement sp = null; // CFLoadRewardedVideo();
// }
// string spString = CFGetPlacementInfo(placementName);
// if (spString != null) // public void showRewardedVideo()
// { // {
// Dictionary<string, object> spDic = IronSourceJSON.Json.Deserialize(spString) as Dictionary<string, object>; // CFShowRewardedVideo();
// string pName = spDic["placement_name"].ToString(); // }
// string rewardName = spDic["reward_name"].ToString();
// int rewardAmount = Convert.ToInt32(spDic["reward_amount"].ToString()); // public void showRewardedVideo(string placementName)
// sp = new IronSourcePlacement(pName, rewardName, rewardAmount); // {
// } // CFShowRewardedVideoWithPlacementName(placementName);
// }
// return sp;
// } // public bool isRewardedVideoAvailable()
// {
// public void setRewardedVideoServerParams(Dictionary<string, string> parameters) // return CFIsRewardedVideoAvailable();
// { // }
// string json = IronSourceJSON.Json.Serialize(parameters);
// CFSetRewardedVideoServerParameters(json); // public bool isRewardedVideoPlacementCapped(string placementName)
// } // {
// return CFIsRewardedVideoPlacementCapped(placementName);
// public void clearRewardedVideoServerParams() // }
// {
// CFClearRewardedVideoServerParameters(); // public IronSourcePlacement getPlacementInfo(string placementName)
// } // {
// IronSourcePlacement sp = null;
// //******************* RewardedVideo DemandOnly API *******************//
// string spString = CFGetPlacementInfo(placementName);
// public void showISDemandOnlyRewardedVideo(string instanceId) // if (spString != null)
// { // {
// CFShowISDemandOnlyRewardedVideo(instanceId); // Dictionary<string, object> spDic = IronSourceJSON.Json.Deserialize(spString) as Dictionary<string, object>;
// } // string pName = spDic["placement_name"].ToString();
// string rewardName = spDic["reward_name"].ToString();
// public void loadISDemandOnlyRewardedVideo(string instanceId) // int rewardAmount = Convert.ToInt32(spDic["reward_amount"].ToString());
// { // sp = new IronSourcePlacement(pName, rewardName, rewardAmount);
// CFLoadISDemandOnlyRewardedVideo(instanceId); // }
// }
// return sp;
// public bool isISDemandOnlyRewardedVideoAvailable(string instanceId) // }
// {
// return CFIsDemandOnlyRewardedVideoAvailable(instanceId); // public void setRewardedVideoServerParams(Dictionary<string, string> parameters)
// } // {
// string json = IronSourceJSON.Json.Serialize(parameters);
// //******************* Interstitial API *******************// // CFSetRewardedVideoServerParameters(json);
// }
// public void loadInterstitial()
// { // public void clearRewardedVideoServerParams()
// CFLoadInterstitial(); // {
// } // CFClearRewardedVideoServerParameters();
// }
// public void showInterstitial()
// { // //******************* RewardedVideo DemandOnly API *******************//
// CFShowInterstitial();
// } // public void showISDemandOnlyRewardedVideo(string instanceId)
// {
// public void showInterstitial(string placementName) // CFShowISDemandOnlyRewardedVideo(instanceId);
// { // }
// CFShowInterstitialWithPlacementName(placementName);
// } // public void loadISDemandOnlyRewardedVideo(string instanceId)
// {
// public bool isInterstitialReady() // CFLoadISDemandOnlyRewardedVideo(instanceId);
// { // }
// return CFIsInterstitialReady();
// } // public bool isISDemandOnlyRewardedVideoAvailable(string instanceId)
// {
// public bool isInterstitialPlacementCapped(string placementName) // return CFIsDemandOnlyRewardedVideoAvailable(instanceId);
// { // }
// return CFIsInterstitialPlacementCapped(placementName);
// } // //******************* Interstitial API *******************//
// //******************* Interstitial DemandOnly API *******************// // public void loadInterstitial()
// {
// public void loadISDemandOnlyInterstitial(string instanceId) // CFLoadInterstitial();
// { // }
// CFLoadISDemandOnlyInterstitial(instanceId);
// } // public void showInterstitial()
// {
// public void showISDemandOnlyInterstitial(string instanceId) // CFShowInterstitial();
// { // }
// CFShowISDemandOnlyInterstitial(instanceId);
// } // public void showInterstitial(string placementName)
// {
// public bool isISDemandOnlyInterstitialReady(string instanceId) // CFShowInterstitialWithPlacementName(placementName);
// { // }
// return CFIsDemandOnlyInterstitialReady(instanceId);
// } // public bool isInterstitialReady()
// {
// //******************* Offerwall API *******************// // return CFIsInterstitialReady();
// }
// public void showOfferwall()
// { // public bool isInterstitialPlacementCapped(string placementName)
// CFShowOfferwall(); // {
// } // return CFIsInterstitialPlacementCapped(placementName);
// }
// public void showOfferwall(string placementName)
// { // //******************* Interstitial DemandOnly API *******************//
// CFShowOfferwallWithPlacementName(placementName);
// } // public void loadISDemandOnlyInterstitial(string instanceId)
// {
// public void getOfferwallCredits() // CFLoadISDemandOnlyInterstitial(instanceId);
// { // }
// CFGetOfferwallCredits();
// } // public void showISDemandOnlyInterstitial(string instanceId)
// {
// public bool isOfferwallAvailable() // CFShowISDemandOnlyInterstitial(instanceId);
// { // }
// return CFIsOfferwallAvailable();
// } // public bool isISDemandOnlyInterstitialReady(string instanceId)
// {
// //******************* Banner API *******************// // return CFIsDemandOnlyInterstitialReady(instanceId);
// }
// public void loadBanner(IronSourceBannerSize size, IronSourceBannerPosition position)
// { // //******************* Offerwall API *******************//
// loadBanner(size, position, "");
// } // public void showOfferwall()
// {
// public void loadBanner(IronSourceBannerSize size, IronSourceBannerPosition position, string placementName) // CFShowOfferwall();
// { // }
// CFLoadBanner(size.Description, (int)size.Width, (int)size.Height, (int)position, placementName, (bool)size.IsAdaptiveEnabled());
// } // public void showOfferwall(string placementName)
// {
// public void destroyBanner() // CFShowOfferwallWithPlacementName(placementName);
// { // }
// CFDestroyBanner();
// } // public void getOfferwallCredits()
// {
// public void displayBanner() // CFGetOfferwallCredits();
// { // }
// CFDisplayBanner();
// } // public bool isOfferwallAvailable()
// {
// public void hideBanner() // return CFIsOfferwallAvailable();
// { // }
// CFHideBanner();
// } // //******************* Banner API *******************//
// public bool isBannerPlacementCapped(string placementName) // public void loadBanner(IronSourceBannerSize size, IronSourceBannerPosition position)
// { // {
// return CFIsBannerPlacementCapped(placementName); // loadBanner(size, position, "");
// } // }
// public void setSegment(IronSourceSegment segment) // public void loadBanner(IronSourceBannerSize size, IronSourceBannerPosition position, string placementName)
// { // {
// Dictionary<string, string> dict = segment.getSegmentAsDict(); // CFLoadBanner(size.Description, (int)size.Width, (int)size.Height, (int)position, placementName, (bool)size.IsAdaptiveEnabled());
// string json = IronSourceJSON.Json.Serialize(dict); // }
// CFSetSegment(json);
// } // public void destroyBanner()
// {
// public void setConsent(bool consent) // CFDestroyBanner();
// { // }
// CFSetConsent(consent);
// } // public void displayBanner()
// {
// public void loadConsentViewWithType(string consentViewType) // CFDisplayBanner();
// { // }
// CFLoadConsentViewWithType(consentViewType);
// } // public void hideBanner()
// {
// public void showConsentViewWithType(string consentViewType) // CFHideBanner();
// { // }
// CFShowConsentViewWithType(consentViewType);
// } // public bool isBannerPlacementCapped(string placementName)
// {
// //******************* ILRD API *******************// // return CFIsBannerPlacementCapped(placementName);
// }
// public void setAdRevenueData(string dataSource, Dictionary<string, string> impressionData)
// { // public void setSegment(IronSourceSegment segment)
// string json = IronSourceJSON.Json.Serialize(impressionData); // {
// CFSetAdRevenueData(dataSource, json); // Dictionary<string, string> dict = segment.getSegmentAsDict();
// } // string json = IronSourceJSON.Json.Serialize(dict);
// CFSetSegment(json);
// //******************* TestSuite API *******************// // }
// public void launchTestSuite() // public void setConsent(bool consent)
// { // {
// Debug.Log("iOSAgent: launching TestSuite"); // CFSetConsent(consent);
// CFLaunchTestSuite(); // }
// }
// public void loadConsentViewWithType(string consentViewType)
// #endregion // {
// CFLoadConsentViewWithType(consentViewType);
// }
// public void showConsentViewWithType(string consentViewType)
// {
// CFShowConsentViewWithType(consentViewType);
// }
// //******************* ILRD API *******************//
// public void setAdRevenueData(string dataSource, Dictionary<string, string> impressionData)
// {
// string json = IronSourceJSON.Json.Serialize(impressionData);
// CFSetAdRevenueData(dataSource, json);
// }
// //******************* TestSuite API *******************//
// public void launchTestSuite()
// {
// Debug.Log("iOSAgent: launching TestSuite");
// CFLaunchTestSuite();
// }
// #endregion
// } // }
#endif #endif

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<dependencies> <dependencies>
<androidPackages> <androidPackages>
<androidPackage spec="com.applovin:applovin-sdk:11.4.4" /> <androidPackage spec="com.applovin:applovin-sdk:11.10.1" />
</androidPackages> </androidPackages>
<iosPods> <iosPods>
<iosPod name="AppLovinSDK" version="11.4.3" /> <iosPod name="AppLovinSDK" version="11.10.1" />
</iosPods> </iosPods>
</dependencies> </dependencies>

View File

@ -16,6 +16,7 @@ typedef void (*ALUnityBackgroundCallback)(const char* args);
- (void)createBannerWithAdUnitIdentifier:(NSString *)adUnitIdentifier atPosition:(NSString *)bannerPosition; - (void)createBannerWithAdUnitIdentifier:(NSString *)adUnitIdentifier atPosition:(NSString *)bannerPosition;
- (void)createBannerWithAdUnitIdentifier:(NSString *)adUnitIdentifier x:(CGFloat)xOffset y:(CGFloat)yOffset; - (void)createBannerWithAdUnitIdentifier:(NSString *)adUnitIdentifier x:(CGFloat)xOffset y:(CGFloat)yOffset;
- (void)loadBannerWithAdUnitIdentifier:(NSString *)adUnitIdentifier;
- (void)setBannerBackgroundColorForAdUnitIdentifier:(NSString *)adUnitIdentifier hexColorCode:(NSString *)hexColorCode; - (void)setBannerBackgroundColorForAdUnitIdentifier:(NSString *)adUnitIdentifier hexColorCode:(NSString *)hexColorCode;
- (void)setBannerPlacement:(nullable NSString *)placement forAdUnitIdentifier:(NSString *)adUnitIdentifier; - (void)setBannerPlacement:(nullable NSString *)placement forAdUnitIdentifier:(NSString *)adUnitIdentifier;
- (void)startBannerAutoRefreshForAdUnitIdentifier:(NSString *)adUnitIdentifier; - (void)startBannerAutoRefreshForAdUnitIdentifier:(NSString *)adUnitIdentifier;
@ -34,6 +35,7 @@ typedef void (*ALUnityBackgroundCallback)(const char* args);
- (void)createMRecWithAdUnitIdentifier:(NSString *)adUnitIdentifier atPosition:(NSString *)mrecPosition; - (void)createMRecWithAdUnitIdentifier:(NSString *)adUnitIdentifier atPosition:(NSString *)mrecPosition;
- (void)createMRecWithAdUnitIdentifier:(NSString *)adUnitIdentifier x:(CGFloat)xOffset y:(CGFloat)yOffset; - (void)createMRecWithAdUnitIdentifier:(NSString *)adUnitIdentifier x:(CGFloat)xOffset y:(CGFloat)yOffset;
- (void)loadMRecWithAdUnitIdentifier:(NSString *)adUnitIdentifier;
- (void)setMRecPlacement:(nullable NSString *)placement forAdUnitIdentifier:(NSString *)adUnitIdentifier; - (void)setMRecPlacement:(nullable NSString *)placement forAdUnitIdentifier:(NSString *)adUnitIdentifier;
- (void)startMRecAutoRefreshForAdUnitIdentifier:(NSString *)adUnitIdentifier; - (void)startMRecAutoRefreshForAdUnitIdentifier:(NSString *)adUnitIdentifier;
- (void)stopMRecAutoRefreshForAdUnitIdentifier:(NSString *)adUnitIdentifer; - (void)stopMRecAutoRefreshForAdUnitIdentifier:(NSString *)adUnitIdentifer;
@ -61,6 +63,12 @@ typedef void (*ALUnityBackgroundCallback)(const char* args);
- (void)setInterstitialExtraParameterForAdUnitIdentifier:(NSString *)adUnitIdentifier key:(NSString *)key value:(nullable NSString *)value; - (void)setInterstitialExtraParameterForAdUnitIdentifier:(NSString *)adUnitIdentifier key:(NSString *)key value:(nullable NSString *)value;
- (void)setInterstitialLocalExtraParameterForAdUnitIdentifier:(NSString *)adUnitIdentifier key:(NSString *)key value:(nullable id)value; - (void)setInterstitialLocalExtraParameterForAdUnitIdentifier:(NSString *)adUnitIdentifier key:(NSString *)key value:(nullable id)value;
- (void)loadAppOpenAdWithAdUnitIdentifier:(NSString *)adUnitIdentifier;
- (BOOL)isAppOpenAdReadyWithAdUnitIdentifier:(NSString *)adUnitIdentifier;
- (void)showAppOpenAdWithAdUnitIdentifier:(NSString *)adUnitIdentifier placement:(nullable NSString *)placement customData:(nullable NSString *)customData;
- (void)setAppOpenAdExtraParameterForAdUnitIdentifier:(NSString *)adUnitIdentifier key:(NSString *)key value:(nullable NSString *)value;
- (void)setAppOpenAdLocalExtraParameterForAdUnitIdentifier:(NSString *)adUnitIdentifier key:(NSString *)key value:(nullable id)value;
- (void)loadRewardedAdWithAdUnitIdentifier:(NSString *)adUnitIdentifier; - (void)loadRewardedAdWithAdUnitIdentifier:(NSString *)adUnitIdentifier;
- (BOOL)isRewardedAdReadyWithAdUnitIdentifier:(NSString *)adUnitIdentifier; - (BOOL)isRewardedAdReadyWithAdUnitIdentifier:(NSString *)adUnitIdentifier;
- (void)showRewardedAdWithAdUnitIdentifier:(NSString *)adUnitIdentifier placement:(nullable NSString *)placement customData:(nullable NSString *)customData; - (void)showRewardedAdWithAdUnitIdentifier:(NSString *)adUnitIdentifier placement:(nullable NSString *)placement customData:(nullable NSString *)customData;
@ -85,8 +93,11 @@ typedef void (*ALUnityBackgroundCallback)(const char* args);
// User Service // User Service
- (void)didDismissUserConsentDialog; - (void)didDismissUserConsentDialog;
// Consent Flow
- (void)startConsentFlow;
// Utils // Utils
+ (NSString *)serializeParameters:(NSDictionary<NSString *, NSString *> *)dict; + (NSString *)serializeParameters:(NSDictionary<NSString *, id> *)dict;
/** /**
* Creates an instance of @c MAUnityAdManager if needed and returns the singleton instance. * Creates an instance of @c MAUnityAdManager if needed and returns the singleton instance.

View File

@ -3,7 +3,6 @@ guid: 4209563f82b8a4f7dabf03705ab761c6
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/AppLovin/Plugins/iOS/MAUnityAdManager.h - al_max_export_path-MaxSdk/AppLovin/Plugins/iOS/MAUnityAdManager.h
- al_max_export_path-MaxSdk\AppLovin\Plugins\iOS\MAUnityAdManager.h
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
@ -16,7 +15,7 @@ PluginImporter:
validateReferences: 1 validateReferences: 1
platformData: platformData:
- first: - first:
: Any '': Any
second: second:
enabled: 0 enabled: 0
settings: settings:

View File

@ -5,7 +5,7 @@
#import "MAUnityAdManager.h" #import "MAUnityAdManager.h"
#define VERSION @"5.4.5" #define VERSION @"5.10.1"
#define KEY_WINDOW [UIApplication sharedApplication].keyWindow #define KEY_WINDOW [UIApplication sharedApplication].keyWindow
#define DEVICE_SPECIFIC_ADVIEW_AD_FORMAT ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) ? MAAdFormat.leader : MAAdFormat.banner #define DEVICE_SPECIFIC_ADVIEW_AD_FORMAT ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) ? MAAdFormat.leader : MAAdFormat.banner
@ -42,13 +42,14 @@ extern "C" {
} }
#endif #endif
@interface MAUnityAdManager()<MAAdDelegate, MAAdViewAdDelegate, MARewardedAdDelegate, MAAdRevenueDelegate, ALVariableServiceDelegate> @interface MAUnityAdManager()<MAAdDelegate, MAAdViewAdDelegate, MARewardedAdDelegate, MAAdRevenueDelegate, MAAdReviewDelegate, ALVariableServiceDelegate>
// Parent Fields // Parent Fields
@property (nonatomic, weak) ALSdk *sdk; @property (nonatomic, weak) ALSdk *sdk;
// Fullscreen Ad Fields // Fullscreen Ad Fields
@property (nonatomic, strong) NSMutableDictionary<NSString *, MAInterstitialAd *> *interstitials; @property (nonatomic, strong) NSMutableDictionary<NSString *, MAInterstitialAd *> *interstitials;
@property (nonatomic, strong) NSMutableDictionary<NSString *, MAAppOpenAd *> *appOpenAds;
@property (nonatomic, strong) NSMutableDictionary<NSString *, MARewardedAd *> *rewardedAds; @property (nonatomic, strong) NSMutableDictionary<NSString *, MARewardedAd *> *rewardedAds;
@property (nonatomic, strong) NSMutableDictionary<NSString *, MARewardedInterstitialAd *> *rewardedInterstitialAds; @property (nonatomic, strong) NSMutableDictionary<NSString *, MARewardedInterstitialAd *> *rewardedInterstitialAds;
@ -67,6 +68,7 @@ extern "C" {
@property (nonatomic, strong) NSMutableDictionary<NSString *, NSString *> *adViewCustomDataToSetAfterCreate; @property (nonatomic, strong) NSMutableDictionary<NSString *, NSString *> *adViewCustomDataToSetAfterCreate;
@property (nonatomic, strong) NSMutableArray<NSString *> *adUnitIdentifiersToShowAfterCreate; @property (nonatomic, strong) NSMutableArray<NSString *> *adUnitIdentifiersToShowAfterCreate;
@property (nonatomic, strong) NSMutableSet<NSString *> *disabledAdaptiveBannerAdUnitIdentifiers; @property (nonatomic, strong) NSMutableSet<NSString *> *disabledAdaptiveBannerAdUnitIdentifiers;
@property (nonatomic, strong) NSMutableSet<NSString *> *disabledAutoRefreshAdViewAdUnitIdentifiers;
@property (nonatomic, strong) UIView *safeAreaBackground; @property (nonatomic, strong) UIView *safeAreaBackground;
@property (nonatomic, strong, nullable) UIColor *publisherBannerBackgroundColor; @property (nonatomic, strong, nullable) UIColor *publisherBannerBackgroundColor;
@ -107,6 +109,7 @@ static ALUnityBackgroundCallback backgroundCallback;
if ( self ) if ( self )
{ {
self.interstitials = [NSMutableDictionary dictionaryWithCapacity: 2]; self.interstitials = [NSMutableDictionary dictionaryWithCapacity: 2];
self.appOpenAds = [NSMutableDictionary dictionaryWithCapacity: 2];
self.rewardedAds = [NSMutableDictionary dictionaryWithCapacity: 2]; self.rewardedAds = [NSMutableDictionary dictionaryWithCapacity: 2];
self.rewardedInterstitialAds = [NSMutableDictionary dictionaryWithCapacity: 2]; self.rewardedInterstitialAds = [NSMutableDictionary dictionaryWithCapacity: 2];
self.adViews = [NSMutableDictionary dictionaryWithCapacity: 2]; self.adViews = [NSMutableDictionary dictionaryWithCapacity: 2];
@ -123,6 +126,7 @@ static ALUnityBackgroundCallback backgroundCallback;
self.adViewCustomDataToSetAfterCreate = [NSMutableDictionary dictionaryWithCapacity: 1]; self.adViewCustomDataToSetAfterCreate = [NSMutableDictionary dictionaryWithCapacity: 1];
self.adUnitIdentifiersToShowAfterCreate = [NSMutableArray arrayWithCapacity: 2]; self.adUnitIdentifiersToShowAfterCreate = [NSMutableArray arrayWithCapacity: 2];
self.disabledAdaptiveBannerAdUnitIdentifiers = [NSMutableSet setWithCapacity: 2]; self.disabledAdaptiveBannerAdUnitIdentifiers = [NSMutableSet setWithCapacity: 2];
self.disabledAutoRefreshAdViewAdUnitIdentifiers = [NSMutableSet setWithCapacity: 2];
self.adInfoDict = [NSMutableDictionary dictionary]; self.adInfoDict = [NSMutableDictionary dictionary];
self.adInfoDictLock = [[NSObject alloc] init]; self.adInfoDictLock = [[NSObject alloc] init];
@ -172,7 +176,15 @@ static ALUnityBackgroundCallback backgroundCallback;
backgroundCallback = unityBackgroundCallback; backgroundCallback = unityBackgroundCallback;
NSDictionary *infoDict = [[NSBundle mainBundle] infoDictionary]; NSDictionary *infoDict = [[NSBundle mainBundle] infoDictionary];
NSString *sdkKey = infoDict[@"AppLovinSdkKey"]; NSString *sdkKey = infoDict[@"AppLovinSdkKey"];
self.sdk = [ALSdk sharedWithKey: sdkKey settings: [self generateSDKSettingsForAdUnitIdentifiers: serializedAdUnitIdentifiers metaData: serializedMetaData]]; if ( [sdkKey al_isValidString] )
{
self.sdk = [ALSdk sharedWithKey: sdkKey settings: [self generateSDKSettingsForAdUnitIdentifiers: serializedAdUnitIdentifiers metaData: serializedMetaData]];
}
else
{
self.sdk = [ALSdk sharedWithSettings:[self generateSDKSettingsForAdUnitIdentifiers:serializedAdUnitIdentifiers metaData:serializedMetaData]];
}
self.sdk.variableService.delegate = self; self.sdk.variableService.delegate = self;
[self.sdk setPluginVersion: [@"Max-Unity-" stringByAppendingString: VERSION]]; [self.sdk setPluginVersion: [@"Max-Unity-" stringByAppendingString: VERSION]];
self.sdk.mediationProvider = @"max"; self.sdk.mediationProvider = @"max";
@ -187,7 +199,8 @@ static ALUnityBackgroundCallback backgroundCallback;
@"consentDialogState" : consentDialogStateStr, @"consentDialogState" : consentDialogStateStr,
@"countryCode" : configuration.countryCode, @"countryCode" : configuration.countryCode,
@"appTrackingStatus" : appTrackingStatus, @"appTrackingStatus" : appTrackingStatus,
@"isSuccessfullyInitialized" : ([self.sdk isInitialized] ? @"true" : @"false")}]; @"isSuccessfullyInitialized" : @([self.sdk isInitialized]),
@"isTestModeEnabled" : @([configuration isTestModeEnabled])}];
}]; }];
return self.sdk; return self.sdk;
@ -205,6 +218,11 @@ static ALUnityBackgroundCallback backgroundCallback;
[self createAdViewWithAdUnitIdentifier: adUnitIdentifier adFormat: [self adViewAdFormatForAdUnitIdentifier: adUnitIdentifier] atPosition: DEFAULT_AD_VIEW_POSITION withOffset: CGPointMake(xOffset, yOffset)]; [self createAdViewWithAdUnitIdentifier: adUnitIdentifier adFormat: [self adViewAdFormatForAdUnitIdentifier: adUnitIdentifier] atPosition: DEFAULT_AD_VIEW_POSITION withOffset: CGPointMake(xOffset, yOffset)];
} }
- (void)loadBannerWithAdUnitIdentifier:(NSString *)adUnitIdentifier
{
[self loadAdViewWithAdUnitIdentifier: adUnitIdentifier adFormat: [self adViewAdFormatForAdUnitIdentifier: adUnitIdentifier]];
}
- (void)setBannerBackgroundColorForAdUnitIdentifier:(NSString *)adUnitIdentifier hexColorCode:(NSString *)hexColorCode - (void)setBannerBackgroundColorForAdUnitIdentifier:(NSString *)adUnitIdentifier hexColorCode:(NSString *)hexColorCode
{ {
[self setAdViewBackgroundColorForAdUnitIdentifier: adUnitIdentifier adFormat: [self adViewAdFormatForAdUnitIdentifier: adUnitIdentifier] hexColorCode: hexColorCode]; [self setAdViewBackgroundColorForAdUnitIdentifier: adUnitIdentifier adFormat: [self adViewAdFormatForAdUnitIdentifier: adUnitIdentifier] hexColorCode: hexColorCode];
@ -292,6 +310,11 @@ static ALUnityBackgroundCallback backgroundCallback;
[self createAdViewWithAdUnitIdentifier: adUnitIdentifier adFormat: MAAdFormat.mrec atPosition: DEFAULT_AD_VIEW_POSITION withOffset: CGPointMake(xOffset, yOffset)]; [self createAdViewWithAdUnitIdentifier: adUnitIdentifier adFormat: MAAdFormat.mrec atPosition: DEFAULT_AD_VIEW_POSITION withOffset: CGPointMake(xOffset, yOffset)];
} }
- (void)loadMRecWithAdUnitIdentifier:(NSString *)adUnitIdentifier
{
[self loadAdViewWithAdUnitIdentifier: adUnitIdentifier adFormat: MAAdFormat.mrec];
}
- (void)setMRecPlacement:(nullable NSString *)placement forAdUnitIdentifier:(NSString *)adUnitIdentifier - (void)setMRecPlacement:(nullable NSString *)placement forAdUnitIdentifier:(NSString *)adUnitIdentifier
{ {
[self setAdViewPlacement: placement forAdUnitIdentifier: adUnitIdentifier adFormat: MAAdFormat.mrec]; [self setAdViewPlacement: placement forAdUnitIdentifier: adUnitIdentifier adFormat: MAAdFormat.mrec];
@ -302,9 +325,9 @@ static ALUnityBackgroundCallback backgroundCallback;
[self startAdViewAutoRefreshForAdUnitIdentifier: adUnitIdentifier adFormat: MAAdFormat.mrec]; [self startAdViewAutoRefreshForAdUnitIdentifier: adUnitIdentifier adFormat: MAAdFormat.mrec];
} }
- (void)stopMRecAutoRefreshForAdUnitIdentifier:(NSString *)adUnitIdentifer - (void)stopMRecAutoRefreshForAdUnitIdentifier:(NSString *)adUnitIdentifier
{ {
[self stopAdViewAutoRefreshForAdUnitIdentifier: adUnitIdentifer adFormat: MAAdFormat.mrec]; [self stopAdViewAutoRefreshForAdUnitIdentifier: adUnitIdentifier adFormat: MAAdFormat.mrec];
} }
- (void)updateMRecPosition:(NSString *)mrecPosition forAdUnitIdentifier:(NSString *)adUnitIdentifier - (void)updateMRecPosition:(NSString *)mrecPosition forAdUnitIdentifier:(NSString *)adUnitIdentifier
@ -427,6 +450,38 @@ static ALUnityBackgroundCallback backgroundCallback;
[interstitial setLocalExtraParameterForKey: key value: value]; [interstitial setLocalExtraParameterForKey: key value: value];
} }
#pragma mark - App Open Ads
- (void)loadAppOpenAdWithAdUnitIdentifier:(NSString *)adUnitIdentifier
{
MAAppOpenAd *appOpenAd = [self retrieveAppOpenAdForAdUnitIdentifier: adUnitIdentifier];
[appOpenAd loadAd];
}
- (BOOL)isAppOpenAdReadyWithAdUnitIdentifier:(NSString *)adUnitIdentifier
{
MAAppOpenAd *appOpenAd = [self retrieveAppOpenAdForAdUnitIdentifier: adUnitIdentifier];
return [appOpenAd isReady];
}
- (void)showAppOpenAdWithAdUnitIdentifier:(NSString *)adUnitIdentifier placement:(nullable NSString *)placement customData:(nullable NSString *)customData
{
MAAppOpenAd *appOpenAd = [self retrieveAppOpenAdForAdUnitIdentifier: adUnitIdentifier];
[appOpenAd showAdForPlacement: placement customData: customData];
}
- (void)setAppOpenAdExtraParameterForAdUnitIdentifier:(NSString *)adUnitIdentifier key:(NSString *)key value:(nullable NSString *)value
{
MAAppOpenAd *appOpenAd = [self retrieveAppOpenAdForAdUnitIdentifier: adUnitIdentifier];
[appOpenAd setExtraParameterForKey: key value: value];
}
- (void)setAppOpenAdLocalExtraParameterForAdUnitIdentifier:(NSString *)adUnitIdentifier key:(NSString *)key value:(nullable id)value
{
MAAppOpenAd *appOpenAd = [self retrieveAppOpenAdForAdUnitIdentifier: adUnitIdentifier];
[appOpenAd setLocalExtraParameterForKey: key value: value];
}
#pragma mark - Rewarded #pragma mark - Rewarded
- (void)loadRewardedAdWithAdUnitIdentifier:(NSString *)adUnitIdentifier - (void)loadRewardedAdWithAdUnitIdentifier:(NSString *)adUnitIdentifier
@ -568,6 +623,7 @@ static ALUnityBackgroundCallback backgroundCallback;
} }
networkResponseDict[@"credentials"] = response.credentials; networkResponseDict[@"credentials"] = response.credentials;
networkResponseDict[@"isBidding"] = @([response isBidding]);
MAError *error = response.error; MAError *error = response.error;
if ( error ) if ( error )
@ -636,6 +692,10 @@ static ALUnityBackgroundCallback backgroundCallback;
{ {
name = @"OnInterstitialLoadedEvent"; name = @"OnInterstitialLoadedEvent";
} }
else if ( MAAdFormat.appOpen == adFormat )
{
name = @"OnAppOpenAdLoadedEvent";
}
else if ( MAAdFormat.rewarded == adFormat ) else if ( MAAdFormat.rewarded == adFormat )
{ {
name = @"OnRewardedAdLoadedEvent"; name = @"OnRewardedAdLoadedEvent";
@ -688,6 +748,10 @@ static ALUnityBackgroundCallback backgroundCallback;
{ {
name = @"OnInterstitialLoadFailedEvent"; name = @"OnInterstitialLoadFailedEvent";
} }
else if ( self.appOpenAds[adUnitIdentifier] )
{
name = @"OnAppOpenAdLoadFailedEvent";
}
else if ( self.rewardedAds[adUnitIdentifier] ) else if ( self.rewardedAds[adUnitIdentifier] )
{ {
name = @"OnRewardedAdLoadFailedEvent"; name = @"OnRewardedAdLoadFailedEvent";
@ -735,6 +799,10 @@ static ALUnityBackgroundCallback backgroundCallback;
{ {
name = @"OnInterstitialClickedEvent"; name = @"OnInterstitialClickedEvent";
} }
else if ( MAAdFormat.appOpen == adFormat )
{
name = @"OnAppOpenAdClickedEvent";
}
else if ( MAAdFormat.rewarded == adFormat ) else if ( MAAdFormat.rewarded == adFormat )
{ {
name = @"OnRewardedAdClickedEvent"; name = @"OnRewardedAdClickedEvent";
@ -768,6 +836,10 @@ static ALUnityBackgroundCallback backgroundCallback;
{ {
name = @"OnInterstitialDisplayedEvent"; name = @"OnInterstitialDisplayedEvent";
} }
else if ( MAAdFormat.appOpen == adFormat )
{
name = @"OnAppOpenAdDisplayedEvent";
}
else if ( MAAdFormat.rewarded == adFormat ) else if ( MAAdFormat.rewarded == adFormat )
{ {
name = @"OnRewardedAdDisplayedEvent"; name = @"OnRewardedAdDisplayedEvent";
@ -792,6 +864,10 @@ static ALUnityBackgroundCallback backgroundCallback;
{ {
name = @"OnInterstitialAdFailedToDisplayEvent"; name = @"OnInterstitialAdFailedToDisplayEvent";
} }
else if ( MAAdFormat.appOpen == adFormat )
{
name = @"OnAppOpenAdFailedToDisplayEvent";
}
else if ( MAAdFormat.rewarded == adFormat ) else if ( MAAdFormat.rewarded == adFormat )
{ {
name = @"OnRewardedAdFailedToDisplayEvent"; name = @"OnRewardedAdFailedToDisplayEvent";
@ -825,6 +901,10 @@ static ALUnityBackgroundCallback backgroundCallback;
{ {
name = @"OnInterstitialHiddenEvent"; name = @"OnInterstitialHiddenEvent";
} }
else if ( MAAdFormat.appOpen == adFormat )
{
name = @"OnAppOpenAdHiddenEvent";
}
else if ( MAAdFormat.rewarded == adFormat ) else if ( MAAdFormat.rewarded == adFormat )
{ {
name = @"OnRewardedAdHiddenEvent"; name = @"OnRewardedAdHiddenEvent";
@ -952,6 +1032,10 @@ static ALUnityBackgroundCallback backgroundCallback;
{ {
name = @"OnInterstitialAdRevenuePaidEvent"; name = @"OnInterstitialAdRevenuePaidEvent";
} }
else if ( MAAdFormat.appOpen == adFormat )
{
name = @"OnAppOpenAdRevenuePaidEvent";
}
else if ( MAAdFormat.rewarded == adFormat ) else if ( MAAdFormat.rewarded == adFormat )
{ {
name = @"OnRewardedAdRevenuePaidEvent"; name = @"OnRewardedAdRevenuePaidEvent";
@ -970,6 +1054,41 @@ static ALUnityBackgroundCallback backgroundCallback;
[MAUnityAdManager forwardUnityEventWithArgs: args forwardInBackground: [adFormat isFullscreenAd]]; [MAUnityAdManager forwardUnityEventWithArgs: args forwardInBackground: [adFormat isFullscreenAd]];
} }
- (void)didGenerateCreativeIdentifier:(NSString *)creativeIdentifier forAd:(MAAd *)ad
{
NSString *name;
MAAdFormat *adFormat = ad.format;
if ( MAAdFormat.banner == adFormat || MAAdFormat.leader == adFormat )
{
name = @"OnBannerAdReviewCreativeIdGeneratedEvent";
}
else if ( MAAdFormat.mrec == adFormat )
{
name = @"OnMRecAdReviewCreativeIdGeneratedEvent";
}
else if ( MAAdFormat.interstitial == adFormat )
{
name = @"OnInterstitialAdReviewCreativeIdGeneratedEvent";
}
else if ( MAAdFormat.rewarded == adFormat )
{
name = @"OnRewardedAdReviewCreativeIdGeneratedEvent";
}
else if ( MAAdFormat.rewardedInterstitial == adFormat )
{
name = @"OnRewardedInterstitialAdReviewCreativeIdGeneratedEvent";
}
else
{
[self logInvalidAdFormat: adFormat];
return;
}
NSMutableDictionary<NSString *, id> *args = [self defaultAdEventParametersForName: name withAd: ad];
args[@"adReviewCreativeId"] = creativeIdentifier;
[MAUnityAdManager forwardUnityEventWithArgs: args];
}
- (NSMutableDictionary<NSString *, id> *)defaultAdEventParametersForName:(NSString *)name withAd:(MAAd *)ad - (NSMutableDictionary<NSString *, id> *)defaultAdEventParametersForName:(NSString *)name withAd:(MAAd *)ad
{ {
NSMutableDictionary<NSString *, id> *args = [[self adInfoForAd: ad] mutableCopy]; NSMutableDictionary<NSString *, id> *args = [[self adInfoForAd: ad] mutableCopy];
@ -985,6 +1104,11 @@ static ALUnityBackgroundCallback backgroundCallback;
max_unity_dispatch_on_main_thread(^{ max_unity_dispatch_on_main_thread(^{
[self log: @"Creating %@ with ad unit identifier \"%@\" and position: \"%@\"", adFormat, adUnitIdentifier, adViewPosition]; [self log: @"Creating %@ with ad unit identifier \"%@\" and position: \"%@\"", adFormat, adUnitIdentifier, adViewPosition];
if ( self.adViews[adUnitIdentifier] )
{
[self log: @"Trying to create a %@ that was already created. This will cause the current ad to be hidden.", adFormat.label];
}
// Retrieve ad view from the map // Retrieve ad view from the map
MAAdView *adView = [self retrieveAdViewForAdUnitIdentifier: adUnitIdentifier adFormat: adFormat atPosition: adViewPosition withOffset: offset]; MAAdView *adView = [self retrieveAdViewForAdUnitIdentifier: adUnitIdentifier adFormat: adFormat atPosition: adViewPosition withOffset: offset];
adView.hidden = YES; adView.hidden = YES;
@ -1040,6 +1164,12 @@ static ALUnityBackgroundCallback backgroundCallback;
[adView loadAd]; [adView loadAd];
// Disable auto-refresh if publisher sets it before creating the ad view.
if ( [self.disabledAutoRefreshAdViewAdUnitIdentifiers containsObject: adUnitIdentifier] )
{
[adView stopAutoRefresh];
}
// The publisher may have requested to show the banner before it was created. Now that the banner is created, show it. // The publisher may have requested to show the banner before it was created. Now that the banner is created, show it.
if ( [self.adUnitIdentifiersToShowAfterCreate containsObject: adUnitIdentifier] ) if ( [self.adUnitIdentifiersToShowAfterCreate containsObject: adUnitIdentifier] )
{ {
@ -1049,6 +1179,32 @@ static ALUnityBackgroundCallback backgroundCallback;
}); });
} }
- (void)loadAdViewWithAdUnitIdentifier:(NSString *)adUnitIdentifier adFormat:(MAAdFormat *)adFormat
{
max_unity_dispatch_on_main_thread(^{
MAAdView *adView = [self retrieveAdViewForAdUnitIdentifier: adUnitIdentifier adFormat: adFormat];
if ( !adView )
{
[self log: @"%@ does not exist for ad unit identifier %@.", adFormat.label, adUnitIdentifier];
return;
}
if ( ![self.disabledAutoRefreshAdViewAdUnitIdentifiers containsObject: adUnitIdentifier] )
{
if ( [adView isHidden] )
{
[self log: @"Auto-refresh will resume when the %@ ad is shown. You should only call LoadBanner() or LoadMRec() if you explicitly pause auto-refresh and want to manually load an ad.", adFormat.label];
return;
}
[self log: @"You must stop auto-refresh if you want to manually load %@ ads.", adFormat.label];
return;
}
[adView loadAd];
});
}
- (void)setAdViewBackgroundColorForAdUnitIdentifier:(NSString *)adUnitIdentifier adFormat:(MAAdFormat *)adFormat hexColorCode:(NSString *)hexColorCode - (void)setAdViewBackgroundColorForAdUnitIdentifier:(NSString *)adUnitIdentifier adFormat:(MAAdFormat *)adFormat hexColorCode:(NSString *)hexColorCode
{ {
max_unity_dispatch_on_main_thread(^{ max_unity_dispatch_on_main_thread(^{
@ -1082,6 +1238,8 @@ static ALUnityBackgroundCallback backgroundCallback;
max_unity_dispatch_on_main_thread(^{ max_unity_dispatch_on_main_thread(^{
[self log: @"Starting %@ auto refresh for ad unit identifier \"%@\"", adFormat.label, adUnitIdentifier]; [self log: @"Starting %@ auto refresh for ad unit identifier \"%@\"", adFormat.label, adUnitIdentifier];
[self.disabledAutoRefreshAdViewAdUnitIdentifiers removeObject: adUnitIdentifier];
MAAdView *adView = [self retrieveAdViewForAdUnitIdentifier: adUnitIdentifier adFormat: adFormat]; MAAdView *adView = [self retrieveAdViewForAdUnitIdentifier: adUnitIdentifier adFormat: adFormat];
if ( !adView ) if ( !adView )
{ {
@ -1098,6 +1256,8 @@ static ALUnityBackgroundCallback backgroundCallback;
max_unity_dispatch_on_main_thread(^{ max_unity_dispatch_on_main_thread(^{
[self log: @"Stopping %@ auto refresh for ad unit identifier \"%@\"", adFormat.label, adUnitIdentifier]; [self log: @"Stopping %@ auto refresh for ad unit identifier \"%@\"", adFormat.label, adUnitIdentifier];
[self.disabledAutoRefreshAdViewAdUnitIdentifiers addObject: adUnitIdentifier];
MAAdView *adView = [self retrieveAdViewForAdUnitIdentifier: adUnitIdentifier adFormat: adFormat]; MAAdView *adView = [self retrieveAdViewForAdUnitIdentifier: adUnitIdentifier adFormat: adFormat];
if ( !adView ) if ( !adView )
{ {
@ -1272,7 +1432,10 @@ static ALUnityBackgroundCallback backgroundCallback;
self.safeAreaBackground.hidden = NO; self.safeAreaBackground.hidden = NO;
view.hidden = NO; view.hidden = NO;
[view startAutoRefresh]; if ( ![self.disabledAutoRefreshAdViewAdUnitIdentifiers containsObject: adUnitIdentifier] )
{
[view startAutoRefresh];
}
}); });
} }
@ -1317,6 +1480,7 @@ static ALUnityBackgroundCallback backgroundCallback;
MAAdView *view = [self retrieveAdViewForAdUnitIdentifier: adUnitIdentifier adFormat: adFormat]; MAAdView *view = [self retrieveAdViewForAdUnitIdentifier: adUnitIdentifier adFormat: adFormat];
view.delegate = nil; view.delegate = nil;
view.revenueDelegate = nil; view.revenueDelegate = nil;
view.adReviewDelegate = nil;
[view removeFromSuperview]; [view removeFromSuperview];
@ -1355,6 +1519,7 @@ static ALUnityBackgroundCallback backgroundCallback;
result = [[MAInterstitialAd alloc] initWithAdUnitIdentifier: adUnitIdentifier sdk: self.sdk]; result = [[MAInterstitialAd alloc] initWithAdUnitIdentifier: adUnitIdentifier sdk: self.sdk];
result.delegate = self; result.delegate = self;
result.revenueDelegate = self; result.revenueDelegate = self;
result.adReviewDelegate = self;
self.interstitials[adUnitIdentifier] = result; self.interstitials[adUnitIdentifier] = result;
} }
@ -1362,6 +1527,21 @@ static ALUnityBackgroundCallback backgroundCallback;
return result; return result;
} }
- (MAAppOpenAd *)retrieveAppOpenAdForAdUnitIdentifier:(NSString *)adUnitIdentifier
{
MAAppOpenAd *result = self.appOpenAds[adUnitIdentifier];
if ( !result )
{
result = [[MAAppOpenAd alloc] initWithAdUnitIdentifier: adUnitIdentifier sdk: self.sdk];
result.delegate = self;
result.revenueDelegate = self;
self.appOpenAds[adUnitIdentifier] = result;
}
return result;
}
- (MARewardedAd *)retrieveRewardedAdForAdUnitIdentifier:(NSString *)adUnitIdentifier - (MARewardedAd *)retrieveRewardedAdForAdUnitIdentifier:(NSString *)adUnitIdentifier
{ {
MARewardedAd *result = self.rewardedAds[adUnitIdentifier]; MARewardedAd *result = self.rewardedAds[adUnitIdentifier];
@ -1370,6 +1550,7 @@ static ALUnityBackgroundCallback backgroundCallback;
result = [MARewardedAd sharedWithAdUnitIdentifier: adUnitIdentifier sdk: self.sdk]; result = [MARewardedAd sharedWithAdUnitIdentifier: adUnitIdentifier sdk: self.sdk];
result.delegate = self; result.delegate = self;
result.revenueDelegate = self; result.revenueDelegate = self;
result.adReviewDelegate = self;
self.rewardedAds[adUnitIdentifier] = result; self.rewardedAds[adUnitIdentifier] = result;
} }
@ -1385,6 +1566,7 @@ static ALUnityBackgroundCallback backgroundCallback;
result = [[MARewardedInterstitialAd alloc] initWithAdUnitIdentifier: adUnitIdentifier sdk: self.sdk]; result = [[MARewardedInterstitialAd alloc] initWithAdUnitIdentifier: adUnitIdentifier sdk: self.sdk];
result.delegate = self; result.delegate = self;
result.revenueDelegate = self; result.revenueDelegate = self;
result.adReviewDelegate = self;
self.rewardedInterstitialAds[adUnitIdentifier] = result; self.rewardedInterstitialAds[adUnitIdentifier] = result;
} }
@ -1408,6 +1590,7 @@ static ALUnityBackgroundCallback backgroundCallback;
result.translatesAutoresizingMaskIntoConstraints = NO; result.translatesAutoresizingMaskIntoConstraints = NO;
result.delegate = self; result.delegate = self;
result.revenueDelegate = self; result.revenueDelegate = self;
result.adReviewDelegate = self;
self.adViews[adUnitIdentifier] = result; self.adViews[adUnitIdentifier] = result;
self.adViewPositions[adUnitIdentifier] = adViewPosition; self.adViewPositions[adUnitIdentifier] = adViewPosition;
@ -1415,6 +1598,9 @@ static ALUnityBackgroundCallback backgroundCallback;
UIViewController *rootViewController = [self unityViewController]; UIViewController *rootViewController = [self unityViewController];
[rootViewController.view addSubview: result]; [rootViewController.view addSubview: result];
// Allow pubs to pause auto-refresh immediately, by default.
[result setExtraParameterForKey: @"allow_pause_auto_refresh_immediately" value: @"true"];
} }
return result; return result;
@ -1829,6 +2015,25 @@ static ALUnityBackgroundCallback backgroundCallback;
[MAUnityAdManager forwardUnityEventWithArgs: @{@"name" : @"OnSdkConsentDialogDismissedEvent"}]; [MAUnityAdManager forwardUnityEventWithArgs: @{@"name" : @"OnSdkConsentDialogDismissedEvent"}];
} }
#pragma mark - Consent Flow
- (void)startConsentFlow
{
[self.sdk.cfService scfWithCompletionHander:^(ALCFError * _Nullable error) {
NSMutableDictionary<NSString *, id> *args = [NSMutableDictionary dictionaryWithCapacity: 3];
args[@"name"] = @"OnSdkConsentFlowCompletedEvent";
if ( error )
{
args[@"code"] = @(error.code);
args[@"message"] = error.message;
}
[MAUnityAdManager forwardUnityEventWithArgs: args];
}];
}
#pragma mark - Variable Service (Deprecated) #pragma mark - Variable Service (Deprecated)
- (void)loadVariables - (void)loadVariables

View File

@ -3,7 +3,6 @@ guid: 2973e70bd2fa74984b35aea07ae9db52
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/AppLovin/Plugins/iOS/MAUnityAdManager.m - al_max_export_path-MaxSdk/AppLovin/Plugins/iOS/MAUnityAdManager.m
- al_max_export_path-MaxSdk\AppLovin\Plugins\iOS\MAUnityAdManager.m
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
@ -16,7 +15,7 @@ PluginImporter:
validateReferences: 1 validateReferences: 1
platformData: platformData:
- first: - first:
: Any '': Any
second: second:
enabled: 0 enabled: 0
settings: settings:

View File

@ -37,11 +37,20 @@ extern "C"
static NSNumber *_creativeDebuggerEnabledToSet; static NSNumber *_creativeDebuggerEnabledToSet;
static NSNumber *_exceptionHandlerEnabledToSet; static NSNumber *_exceptionHandlerEnabledToSet;
static NSNumber *_locationCollectionEnabledToSet; static NSNumber *_locationCollectionEnabledToSet;
static NSNumber *_targetingYearOfBirth;
static NSString *_targetingGender;
static NSNumber *_targetingMaximumAdContentRating;
static NSString *_targetingEmail;
static NSString *_targetingPhoneNumber;
static NSArray<NSString *> *_targetingKeywords;
static NSArray<NSString *> *_targetingInterests;
static NSMutableDictionary<NSString *, NSString *> *_extraParametersToSet = [NSMutableDictionary dictionary]; static NSMutableDictionary<NSString *, NSString *> *_extraParametersToSet = [NSMutableDictionary dictionary];
static NSObject *_extraParametersToSetLock = [[NSObject alloc] init]; static NSObject *_extraParametersToSetLock = [[NSObject alloc] init];
// Helper method to create C string copy // Helper method to create C string copy
static const char * cStringCopy(NSString *string); static const char * cStringCopy(NSString *string);
// Helper method to log errors
void logUninitializedAccessError(char *callingMethod);
bool isPluginInitialized() bool isPluginInitialized()
{ {
@ -67,6 +76,42 @@ extern "C"
return array; return array;
} }
ALGender getAppLovinGender(NSString *genderString)
{
if ( [@"F" al_isEqualToStringIgnoringCase: genderString] )
{
return ALGenderFemale;
}
else if ( [@"M" al_isEqualToStringIgnoringCase: genderString] )
{
return ALGenderMale;
}
else if ( [@"O" al_isEqualToStringIgnoringCase: genderString] )
{
return ALGenderOther;
}
return ALGenderUnknown;
}
ALAdContentRating getAppLovinAdContentRating(int maximumAdContentRating)
{
if ( maximumAdContentRating == 1 )
{
return ALAdContentRatingAllAudiences;
}
else if ( maximumAdContentRating == 2 )
{
return ALAdContentRatingEveryoneOverTwelve;
}
else if ( maximumAdContentRating == 3 )
{
return ALAdContentRatingMatureAudiences;
}
return ALAdContentRatingNone;
}
void setPendingExtraParametersIfNeeded(ALSdkSettings *settings) void setPendingExtraParametersIfNeeded(ALSdkSettings *settings)
{ {
NSDictionary *extraParameters; NSDictionary *extraParameters;
@ -129,7 +174,7 @@ extern "C"
if ( _verboseLoggingToSet ) if ( _verboseLoggingToSet )
{ {
_sdk.settings.isVerboseLogging = _verboseLoggingToSet.boolValue; _sdk.settings.verboseLoggingEnabled = _verboseLoggingToSet.boolValue;
_verboseLoggingToSet = nil; _verboseLoggingToSet = nil;
} }
@ -151,6 +196,48 @@ extern "C"
_locationCollectionEnabledToSet = nil; _locationCollectionEnabledToSet = nil;
} }
if ( _targetingYearOfBirth )
{
_sdk.targetingData.yearOfBirth = _targetingYearOfBirth.intValue <= 0 ? nil : _targetingYearOfBirth;
_targetingYearOfBirth = nil;
}
if ( _targetingGender )
{
_sdk.targetingData.gender = getAppLovinGender(_targetingGender);
_targetingGender = nil;
}
if ( _targetingMaximumAdContentRating )
{
_sdk.targetingData.maximumAdContentRating = getAppLovinAdContentRating(_targetingMaximumAdContentRating.intValue);
_targetingMaximumAdContentRating = nil;
}
if ( _targetingEmail )
{
_sdk.targetingData.email = _targetingEmail;
_targetingEmail = nil;
}
if ( _targetingPhoneNumber )
{
_sdk.targetingData.phoneNumber = _targetingPhoneNumber;
_targetingPhoneNumber = nil;
}
if ( _targetingKeywords )
{
_sdk.targetingData.keywords = _targetingKeywords;
_targetingKeywords = nil;
}
if ( _targetingInterests )
{
_sdk.targetingData.interests = _targetingInterests;
_targetingInterests = nil;
}
setPendingExtraParametersIfNeeded( _sdk.settings ); setPendingExtraParametersIfNeeded( _sdk.settings );
} }
@ -195,6 +282,17 @@ extern "C"
[_sdk showMediationDebugger]; [_sdk showMediationDebugger];
} }
void _MaxShowCreativeDebugger()
{
if ( !_sdk )
{
NSLog(@"[%@] Failed to show creative debugger - please ensure the AppLovin MAX Unity Plugin has been initialized by calling 'MaxSdk.InitializeSdk();'!", TAG);
return;
}
[_sdk showCreativeDebugger];
}
void _MaxShowConsentDialog() void _MaxShowConsentDialog()
{ {
NSLog(@"[%@] Failed to show consent dialog - Unavailable on iOS, please use the consent flow: https://dash.applovin.com/documentation/mediation/unity/getting-started/consent-flow", TAG); NSLog(@"[%@] Failed to show consent dialog - Unavailable on iOS, please use the consent flow: https://dash.applovin.com/documentation/mediation/unity/getting-started/consent-flow", TAG);
@ -236,82 +334,98 @@ extern "C"
void _MaxSetTargetingDataYearOfBirth(const int yearOfBirth) void _MaxSetTargetingDataYearOfBirth(const int yearOfBirth)
{ {
if ( !isPluginInitialized() ) return; if ( !_sdk )
{
_targetingYearOfBirth = @(yearOfBirth);
return;
}
_sdk.targetingData.yearOfBirth = yearOfBirth <= 0 ? nil : @(yearOfBirth); _sdk.targetingData.yearOfBirth = yearOfBirth <= 0 ? nil : @(yearOfBirth);
} }
void _MaxSetTargetingDataGender(const char *gender) void _MaxSetTargetingDataGender(char *gender)
{ {
if ( !isPluginInitialized() ) return; if ( !_sdk )
{
_targetingGender = NSSTRING(gender);
return;
}
NSString *genderString = NSSTRING(gender); NSString *genderString = NSSTRING(gender);
ALGender alGender = ALGenderUnknown; _sdk.targetingData.gender = getAppLovinGender(genderString);
if ( [genderString isEqualToString: @"F"] )
{
alGender = ALGenderFemale;
}
else if ( [genderString isEqualToString: @"M"] )
{
alGender = ALGenderMale;
}
else if ( [genderString isEqualToString: @"O"] )
{
alGender = ALGenderOther;
}
_sdk.targetingData.gender = alGender;
} }
void _MaxSetTargetingDataMaximumAdContentRating(const int maximumAdContentRating) void _MaxSetTargetingDataMaximumAdContentRating(const int maximumAdContentRating)
{ {
if ( !isPluginInitialized() ) return; if ( !_sdk )
ALAdContentRating rating = ALAdContentRatingNone;
if ( maximumAdContentRating == 1 )
{ {
rating = ALAdContentRatingAllAudiences; _targetingMaximumAdContentRating = @(maximumAdContentRating);
} return;
else if ( maximumAdContentRating == 2 )
{
rating = ALAdContentRatingEveryoneOverTwelve;
}
else if ( maximumAdContentRating == 3 )
{
rating = ALAdContentRatingMatureAudiences;
} }
_sdk.targetingData.maximumAdContentRating = rating; _sdk.targetingData.maximumAdContentRating = getAppLovinAdContentRating(maximumAdContentRating);
} }
void _MaxSetTargetingDataEmail(const char *email) void _MaxSetTargetingDataEmail(char *email)
{ {
if ( !isPluginInitialized() ) return; if ( !_sdk )
{
_targetingEmail = NSSTRING(email);
return;
}
_sdk.targetingData.email = NSSTRING(email); _sdk.targetingData.email = NSSTRING(email);
} }
void _MaxSetTargetingDataPhoneNumber(const char *phoneNumber) void _MaxSetTargetingDataPhoneNumber(char *phoneNumber)
{ {
if ( !isPluginInitialized() ) return; if ( !_sdk )
{
_targetingPhoneNumber = NSSTRING(phoneNumber);
return;
}
_sdk.targetingData.phoneNumber = NSSTRING(phoneNumber); _sdk.targetingData.phoneNumber = NSSTRING(phoneNumber);
} }
void _MaxSetTargetingDataKeywords(char **keywords, int size) void _MaxSetTargetingDataKeywords(char **keywords, int size)
{ {
if ( !isPluginInitialized() ) return; NSArray<NSString *> *keywordsArray = keywords ? toStringArray(keywords, size) : nil;
_sdk.targetingData.keywords = toStringArray(keywords, size); if ( !_sdk )
{
_targetingKeywords = keywordsArray;
return;
}
_sdk.targetingData.keywords = keywordsArray;
} }
void _MaxSetTargetingDataInterests(char **interests, int size) void _MaxSetTargetingDataInterests(char **interests, int size)
{ {
if ( !isPluginInitialized() ) return; NSArray<NSString *> *interestsArray = interests ? toStringArray(interests, size) : nil;
_sdk.targetingData.interests = toStringArray(interests, size); if ( !_sdk )
{
_targetingInterests = interestsArray;
return;
}
_sdk.targetingData.interests = interestsArray;
} }
void _MaxClearAllTargetingData() void _MaxClearAllTargetingData()
{ {
if ( !isPluginInitialized() ) return; if ( !_sdk )
{
_targetingYearOfBirth = nil;
_targetingGender = nil;
_targetingMaximumAdContentRating = nil;
_targetingEmail = nil;
_targetingPhoneNumber = nil;
_targetingKeywords = nil;
_targetingInterests = nil;
return;
}
[_sdk.targetingData clearAll]; [_sdk.targetingData clearAll];
} }
@ -319,7 +433,7 @@ extern "C"
{ {
if ( !_sdk ) if ( !_sdk )
{ {
NSLog(@"[%@] Failed to get SDK configuration - please ensure the AppLovin MAX Unity Plugin has been initialized by calling 'MaxSdk.InitializeSdk();'!", TAG); logUninitializedAccessError("_MaxGetSdkConfiguration");
return cStringCopy(@""); return cStringCopy(@"");
} }
@ -329,7 +443,8 @@ extern "C"
return cStringCopy([MAUnityAdManager serializeParameters: @{@"consentDialogState" : consentDialogStateStr, return cStringCopy([MAUnityAdManager serializeParameters: @{@"consentDialogState" : consentDialogStateStr,
@"countryCode" : _sdk.configuration.countryCode, @"countryCode" : _sdk.configuration.countryCode,
@"appTrackingStatus" : appTrackingStatus, @"appTrackingStatus" : appTrackingStatus,
@"isSuccessfullyInitialized" : ([_sdk isInitialized] ? @"true" : @"false")}]); @"isSuccessfullyInitialized" : @([_sdk isInitialized]),
@"isTestModeEnabled" : @([_sdk.configuration isTestModeEnabled])}]);
} }
void _MaxSetHasUserConsent(bool hasUserConsent) void _MaxSetHasUserConsent(bool hasUserConsent)
@ -391,6 +506,13 @@ extern "C"
[_adManager createBannerWithAdUnitIdentifier: NSSTRING(adUnitIdentifier) x: x y: y]; [_adManager createBannerWithAdUnitIdentifier: NSSTRING(adUnitIdentifier) x: x y: y];
} }
void _MaxLoadBanner(const char *adUnitIdentifier)
{
if (!isPluginInitialized()) return;
[_adManager loadBannerWithAdUnitIdentifier: NSSTRING(adUnitIdentifier)];
}
void _MaxSetBannerBackgroundColor(const char *adUnitIdentifier, const char *hexColorCode) void _MaxSetBannerBackgroundColor(const char *adUnitIdentifier, const char *hexColorCode)
{ {
if (!isPluginInitialized()) return; if (!isPluginInitialized()) return;
@ -493,6 +615,13 @@ extern "C"
[_adManager createMRecWithAdUnitIdentifier: NSSTRING(adUnitIdentifier) x: x y: y]; [_adManager createMRecWithAdUnitIdentifier: NSSTRING(adUnitIdentifier) x: x y: y];
} }
void _MaxLoadMRec(const char *adUnitIdentifier)
{
if (!isPluginInitialized()) return;
[_adManager loadMRecWithAdUnitIdentifier: NSSTRING(adUnitIdentifier)];
}
void _MaxSetMRecPlacement(const char *adUnitIdentifier, const char *placement) void _MaxSetMRecPlacement(const char *adUnitIdentifier, const char *placement)
{ {
[_adManager setMRecPlacement: NSSTRING(placement) forAdUnitIdentifier: NSSTRING(adUnitIdentifier)]; [_adManager setMRecPlacement: NSSTRING(placement) forAdUnitIdentifier: NSSTRING(adUnitIdentifier)];
@ -649,6 +778,41 @@ extern "C"
[_adManager showInterstitialWithAdUnitIdentifier: NSSTRING(adUnitIdentifier) placement: NSSTRING(placement) customData: NSSTRING(customData)]; [_adManager showInterstitialWithAdUnitIdentifier: NSSTRING(adUnitIdentifier) placement: NSSTRING(placement) customData: NSSTRING(customData)];
} }
void _MaxLoadAppOpenAd(const char *adUnitIdentifier)
{
if (!isPluginInitialized()) return;
[_adManager loadAppOpenAdWithAdUnitIdentifier: NSSTRING(adUnitIdentifier)];
}
void _MaxSetAppOpenAdExtraParameter(const char *adUnitIdentifier, const char *key, const char *value)
{
[_adManager setAppOpenAdExtraParameterForAdUnitIdentifier: NSSTRING(adUnitIdentifier)
key: NSSTRING(key)
value: NSSTRING(value)];
}
void _MaxSetAppOpenAdLocalExtraParameter(const char *adUnitIdentifier, const char *key, MAUnityRef value)
{
[_adManager setAppOpenAdLocalExtraParameterForAdUnitIdentifier: NSSTRING(adUnitIdentifier)
key: NSSTRING(key)
value: (__bridge id)value];
}
bool _MaxIsAppOpenAdReady(const char *adUnitIdentifier)
{
if (!isPluginInitialized()) return false;
return [_adManager isAppOpenAdReadyWithAdUnitIdentifier: NSSTRING(adUnitIdentifier)];
}
void _MaxShowAppOpenAd(const char *adUnitIdentifier, const char *placement, const char *customData)
{
if (!isPluginInitialized()) return;
[_adManager showAppOpenAdWithAdUnitIdentifier: NSSTRING(adUnitIdentifier) placement: NSSTRING(placement) customData: NSSTRING(customData)];
}
void _MaxLoadRewardedAd(const char *adUnitIdentifier) void _MaxLoadRewardedAd(const char *adUnitIdentifier)
{ {
if (!isPluginInitialized()) return; if (!isPluginInitialized()) return;
@ -789,7 +953,7 @@ extern "C"
{ {
if ( _sdk ) if ( _sdk )
{ {
_sdk.settings.isVerboseLogging = enabled; _sdk.settings.verboseLoggingEnabled = enabled;
_verboseLoggingToSet = nil; _verboseLoggingToSet = nil;
} }
else else
@ -802,7 +966,7 @@ extern "C"
{ {
if ( _sdk ) if ( _sdk )
{ {
return _sdk.settings.isVerboseLogging; return [_sdk.settings isVerboseLoggingEnabled];
} }
else if ( _verboseLoggingToSet ) else if ( _verboseLoggingToSet )
{ {
@ -890,11 +1054,38 @@ extern "C"
} }
} }
const char * _MaxGetCFType()
{
if ( !_sdk )
{
NSLog(@"[%@] Failed to get available mediated networks - please ensure the AppLovin MAX Unity Plugin has been initialized by calling 'MaxSdk.InitializeSdk();'!", TAG);
return cStringCopy(@(ALCFTypeUnknown).stringValue);
}
return cStringCopy(@(_sdk.cfService.cfType).stringValue);
}
void _MaxStartConsentFlow()
{
if (!isPluginInitialized())
{
logUninitializedAccessError("_MaxStartConsentFlow");
return;
}
[_adManager startConsentFlow];
}
float _MaxGetAdaptiveBannerHeight(const float width) float _MaxGetAdaptiveBannerHeight(const float width)
{ {
return [MAUnityAdManager adaptiveBannerHeightForWidth: width]; return [MAUnityAdManager adaptiveBannerHeightForWidth: width];
} }
void logUninitializedAccessError(char *callingMethod)
{
NSLog(@"[%@] Failed to execute: %s - please ensure the AppLovin MAX Unity Plugin has been initialized by calling 'MaxSdk.InitializeSdk();'!", TAG, callingMethod);
}
[[deprecated("This API has been deprecated. Please use our SDK's initialization callback to retrieve variables instead.")]] [[deprecated("This API has been deprecated. Please use our SDK's initialization callback to retrieve variables instead.")]]
void _MaxLoadVariables() void _MaxLoadVariables()
{ {

View File

@ -3,7 +3,6 @@ guid: 7e373ed7168b243e6b706e991ab5a643
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/AppLovin/Plugins/iOS/MAUnityPlugin.mm - al_max_export_path-MaxSdk/AppLovin/Plugins/iOS/MAUnityPlugin.mm
- al_max_export_path-MaxSdk\AppLovin\Plugins\iOS\MAUnityPlugin.mm
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
@ -16,7 +15,7 @@ PluginImporter:
validateReferences: 1 validateReferences: 1
platformData: platformData:
- first: - first:
: Any '': Any
second: second:
enabled: 0 enabled: 0
settings: settings:

View File

@ -3,7 +3,6 @@ guid: dcf2020c4018447c9b91170c0f62d799
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation - al_max_export_path-MaxSdk/Mediation
- al_max_export_path-MaxSdk\Mediation
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<dependencies> <dependencies>
<!-- <androidPackages> <!-- <androidPackages>
<androidPackage spec="com.applovin.mediation:adcolony-adapter:4.8.0.2"/> <androidPackage spec="com.applovin.mediation:adcolony-adapter:4.8.0.4"/>
</androidPackages> --> </androidPackages> -->
<iosPods> <iosPods>
<iosPod name="AppLovinMediationAdColonyAdapter" version="4.9.0.0.2"/> <iosPod name="AppLovinMediationAdColonyAdapter" version="4.9.0.0.4"/>
</iosPods> </iosPods>
</dependencies> </dependencies>

View File

@ -3,7 +3,6 @@ guid: a351b114cfc11494ba8c131833b1bf74
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/AdColony/Editor/Dependencies.xml - al_max_export_path-MaxSdk/Mediation/AdColony/Editor/Dependencies.xml
- al_max_export_path-MaxSdk\Mediation\AdColony\Editor\Dependencies.xml
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:

View File

@ -3,7 +3,6 @@ guid: ef8467ffb0e4447b79a8804884a7520a
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/ByteDance/Editor - al_max_export_path-MaxSdk/Mediation/ByteDance/Editor
- al_max_export_path-MaxSdk\Mediation\ByteDance\Editor
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}

View File

@ -1,13 +1,13 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<dependencies> <dependencies>
<!-- <androidPackages> <!-- <androidPackages>
<androidPackage spec="com.applovin.mediation:bytedance-adapter:4.5.0.6.0"> <androidPackage spec="com.applovin.mediation:bytedance-adapter:5.4.1.0.0">
<repositories> <repositories>
<repository>https://artifact.bytedance.com/repository/pangle</repository> <repository>https://artifact.bytedance.com/repository/pangle</repository>
</repositories> </repositories>
</androidPackage> </androidPackage>
</androidPackages> --> </androidPackages> -->
<iosPods> <iosPods>
<iosPod name="AppLovinMediationByteDanceAdapter" version="4.6.1.3.0" /> <iosPod name="AppLovinMediationByteDanceAdapter" version="5.4.1.0.0" />
</iosPods> </iosPods>
</dependencies> </dependencies>

View File

@ -3,7 +3,6 @@ guid: 0828555cb1ce94702a4af6f3dce3d735
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/ByteDance/Editor/Dependencies.xml - al_max_export_path-MaxSdk/Mediation/ByteDance/Editor/Dependencies.xml
- al_max_export_path-MaxSdk\Mediation\ByteDance\Editor\Dependencies.xml
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:

View File

@ -3,7 +3,6 @@ guid: a90f13141c35746f5a2996c8ad068fe9
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/Chartboost/Editor - al_max_export_path-MaxSdk/Mediation/Chartboost/Editor
- al_max_export_path-MaxSdk\Mediation\Chartboost\Editor
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}

View File

@ -1,10 +1,14 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<dependencies> <dependencies>
<!-- <androidPackages> <!-- <androidPackages>
<androidPackage spec="com.applovin.mediation:chartboost-adapter:8.4.3.1" /> <androidPackage spec="com.applovin.mediation:chartboost-adapter:9.4.1.0">
<repositories>
<repository>https://cboost.jfrog.io/artifactory/chartboost-ads/</repository>
</repositories>
</androidPackage>
<androidPackage spec="com.google.android.gms:play-services-base:16.1.0" /> <androidPackage spec="com.google.android.gms:play-services-base:16.1.0" />
</androidPackages> --> </androidPackages> -->
<iosPods> <iosPods>
<iosPod name="AppLovinMediationChartboostAdapter" version="9.0.0.0" /> <iosPod name="AppLovinMediationChartboostAdapter" version="9.4.0.0" />
</iosPods> </iosPods>
</dependencies> </dependencies>

View File

@ -3,7 +3,6 @@ guid: 93b0a4618bd884871af0981a7867bb2f
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/Chartboost/Editor/Dependencies.xml - al_max_export_path-MaxSdk/Mediation/Chartboost/Editor/Dependencies.xml
- al_max_export_path-MaxSdk\Mediation\Chartboost\Editor\Dependencies.xml
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:

View File

@ -3,7 +3,6 @@ guid: 28880992a399a48b7abe95b66649d711
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/Facebook/Editor - al_max_export_path-MaxSdk/Mediation/Facebook/Editor
- al_max_export_path-MaxSdk\Mediation\Facebook\Editor
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}

View File

@ -5,9 +5,9 @@
Since FAN SDK depends on older versions of a few support and play service versions Since FAN SDK depends on older versions of a few support and play service versions
`com.applovin.mediation:facebook-adapter:x.y.z.a` resolves to `com.applovin.mediation:facebook-adapter:+` which pulls down the beta versions of FAN SDK. `com.applovin.mediation:facebook-adapter:x.y.z.a` resolves to `com.applovin.mediation:facebook-adapter:+` which pulls down the beta versions of FAN SDK.
Note that forcing the adapter is enough to stop Jar Resolver from pulling the latest FAN SDK. --> Note that forcing the adapter is enough to stop Jar Resolver from pulling the latest FAN SDK. -->
<!-- <androidPackage spec="com.applovin.mediation:facebook-adapter:[6.11.0.5]" /> --> <!-- <androidPackage spec="com.applovin.mediation:facebook-adapter:[6.15.0.0]" /> -->
<!-- </androidPackages> --> <!-- </androidPackages> -->
<iosPods> <iosPods>
<iosPod name="AppLovinMediationFacebookAdapter" version="6.11.2.1" /> <iosPod name="AppLovinMediationFacebookAdapter" version="6.14.0.0" />
</iosPods> </iosPods>
</dependencies> </dependencies>

View File

@ -3,7 +3,6 @@ guid: aea9bdf974328420db5ae118ef0d2b87
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/Facebook/Editor/Dependencies.xml - al_max_export_path-MaxSdk/Mediation/Facebook/Editor/Dependencies.xml
- al_max_export_path-MaxSdk\Mediation\Facebook\Editor\Dependencies.xml
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:

View File

@ -3,7 +3,6 @@ guid: e076e4ef7e2874ba69b108cc7a346c2a
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/Fyber/Editor - al_max_export_path-MaxSdk/Mediation/Fyber/Editor
- al_max_export_path-MaxSdk\Mediation\Fyber\Editor
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<dependencies> <dependencies>
<!-- <androidPackages> <!-- <androidPackages>
<androidPackage spec="com.applovin.mediation:fyber-adapter:8.2.0.0"/> <androidPackage spec="com.applovin.mediation:fyber-adapter:8.2.3.3"/>
</androidPackages> --> </androidPackages> -->
<iosPods> <iosPods>
<iosPod name="AppLovinMediationFyberAdapter" version="8.1.6.0"/> <iosPod name="AppLovinMediationFyberAdapter" version="8.2.4.0"/>
</iosPods> </iosPods>
</dependencies> </dependencies>

View File

@ -3,7 +3,6 @@ guid: 5e123cdc08e804dffb2c40c4fbc83caf
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/Fyber/Editor/Dependencies.xml - al_max_export_path-MaxSdk/Mediation/Fyber/Editor/Dependencies.xml
- al_max_export_path-MaxSdk\Mediation\Fyber\Editor\Dependencies.xml
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:

View File

@ -3,7 +3,6 @@ guid: e8015bd045cea462c8f39c8a05867d08
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/Google/Editor - al_max_export_path-MaxSdk/Mediation/Google/Editor
- al_max_export_path-MaxSdk\Mediation\Google\Editor
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}

View File

@ -2,9 +2,9 @@
<dependencies> <dependencies>
<!-- <androidPackages> --> <!-- <androidPackages> -->
<!-- Ensure that Resolver doesn't inadvertently pull the latest Play Services Ads' SDK that we haven't certified against. --> <!-- Ensure that Resolver doesn't inadvertently pull the latest Play Services Ads' SDK that we haven't certified against. -->
<!-- <androidPackage spec="com.applovin.mediation:google-adapter:[21.1.0.0]" /> <!-- <androidPackage spec="com.applovin.mediation:google-adapter:[22.3.0.0]" />
</androidPackages> --> </androidPackages> -->
<iosPods> <iosPods>
<iosPod name="AppLovinMediationGoogleAdapter" version="9.8.0.0" /> <iosPod name="AppLovinMediationGoogleAdapter" version="10.10.0.0" />
</iosPods> </iosPods>
</dependencies> </dependencies>

View File

@ -3,7 +3,6 @@ guid: 053b810d3594744e38b6fd0fa378fb57
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/Google/Editor/Dependencies.xml - al_max_export_path-MaxSdk/Mediation/Google/Editor/Dependencies.xml
- al_max_export_path-MaxSdk\Mediation\Google\Editor\Dependencies.xml
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:

View File

@ -1,38 +0,0 @@
//
// MaxGoogleInitialize.cs
// AppLovin MAX Unity Plugin
//
// Created by Santosh Bagadi on 10/5/20.
// Copyright © 2020 AppLovin. All rights reserved.
//
using System.IO;
using UnityEditor;
using UnityEngine;
namespace AppLovinMax.Mediation.Google.Editor
{
[InitializeOnLoad]
public class MaxGoogleInitialize
{
private static readonly string LegacyMaxMediationGoogleDir = Path.Combine("Assets", "Plugins/Android/MaxMediationGoogle");
static MaxGoogleInitialize()
{
// 安卓不处理
if (true)
{
return;
}
// Check if the MaxMediationGoogle directory exists and append .androidlib to it.
if (Directory.Exists(LegacyMaxMediationGoogleDir))
{
Debug.Log("[AppLovin MAX] Updating Google Android library directory name to make it compatible with Unity 2020+ versions.");
FileUtil.MoveFileOrDirectory(LegacyMaxMediationGoogleDir, LegacyMaxMediationGoogleDir + ".androidlib");
FileUtil.MoveFileOrDirectory(LegacyMaxMediationGoogleDir + ".meta", LegacyMaxMediationGoogleDir + ".androidlib" + ".meta");
AssetDatabase.Refresh();
}
}
}
}

View File

@ -1,15 +0,0 @@
fileFormatVersion: 2
guid: 2376824a26af1414bbc62440698ccc89
labels:
- al_max
- al_max_export_path-MaxSdk/Mediation/Google/Editor/MaxGoogleInitialize.cs
- al_max_export_path-MaxSdk\Mediation\Google\Editor\MaxGoogleInitialize.cs
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,59 +0,0 @@
//
// MaxMediationGoogleUtils.cs
// AppLovin MAX Unity Plugin
//
// Created by Santosh Bagadi on 11/7/19.
// Copyright © 2019 AppLovin. All rights reserved.
//
using System;
using System.IO;
using UnityEditor;
using UnityEngine;
namespace AppLovinMax.Mediation.Google.Editor
{
/// <summary>
/// An Utils class containing shared convenience methods.
/// </summary>
public static class MaxMediationGoogleUtils
{
private const string AppLovinSettingsExportPath = "MaxSdk/Resources/AppLovinSettings.asset";
/// <summary>
/// Loads the AppLovin Settings asset if it is available and returns the value for the given property name.
/// </summary>
/// <param name="property">The name of the property for which to get the value of from <c>AppLovinSettings.asset</c> file.</param>
/// <returns>The string value of the property if found.</returns>
public static string GetAppIdFromAppLovinSettings(string property)
{
var settingsFileName = GetAppLovinSettingsAssetPath();
if (!File.Exists(settingsFileName))
{
Debug.LogError("[AppLovin MAX] The current plugin version is incompatible with the AdMob adapter. Please update the AppLovin MAX plugin to version 2.4.0 or higher.");
return null;
}
var instance = AssetDatabase.LoadAssetAtPath(settingsFileName, Type.GetType("AppLovinSettings, MaxSdk.Scripts.IntegrationManager.Editor"));
if (instance == null)
{
Debug.LogError("[AppLovin MAX] The current plugin version is incompatible with the AdMob adapter. Please update the AppLovin MAX plugin to version 2.4.15 or higher");
return null;
}
var adMobAppIdProperty = instance.GetType().GetProperty(property);
return adMobAppIdProperty == null ? null : adMobAppIdProperty.GetValue(instance, null).ToString();
}
private static string GetAppLovinSettingsAssetPath()
{
// Since the settings asset is generated during compile time, the asset label will contain platform specific path separator. So, use platform specific export path.
var assetLabel = "l:al_max_export_path-" + AppLovinSettingsExportPath.Replace(Path.AltDirectorySeparatorChar, Path.DirectorySeparatorChar);
var guids = AssetDatabase.FindAssets(assetLabel);
var defaultPath = Path.Combine("Assets", AppLovinSettingsExportPath);
return guids.Length > 0 ? AssetDatabase.GUIDToAssetPath(guids[0]) : defaultPath;
}
}
}

View File

@ -1,15 +0,0 @@
fileFormatVersion: 2
guid: 6de4e4d420b14431a7d169724e23361e
labels:
- al_max
- al_max_export_path-MaxSdk/Mediation/Google/Editor/MaxMediationGoogleUtils.cs
- al_max_export_path-MaxSdk\Mediation\Google\Editor\MaxMediationGoogleUtils.cs
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,48 +0,0 @@
//
// PostProcessor.cs
// AppLovin MAX Unity Plugin
//
// Created by Santosh Bagadi on 6/4/19.
// Copyright © 2019 AppLovin. All rights reserved.
//
#if UNITY_IPHONE || UNITY_IOS
using System.IO;
using UnityEditor;
using UnityEditor.Callbacks;
using UnityEditor.iOS.Xcode;
using UnityEngine;
namespace AppLovinMax.Mediation.Google.Editor
{
/// <summary>
/// A post processor that will add the AdMob App ID to the <c>info.plist</c> file.
/// </summary>
public class PostProcessor
{
[PostProcessBuild]
public static void OnPostProcessBuild(BuildTarget buildTarget, string buildPath)
{
var appId = MaxMediationGoogleUtils.GetAppIdFromAppLovinSettings("AdMobIosAppId");
// Log error if the App ID is not set.
if (string.IsNullOrEmpty(appId) || !appId.StartsWith("ca-app-pub-"))
{
Debug.LogError("[AppLovin MAX] AdMob App ID is not set. Please enter a valid app ID within the AppLovin Integration Manager window.");
return;
}
var plistPath = Path.Combine(buildPath, "Info.plist");
var plist = new PlistDocument();
plist.ReadFromFile(plistPath);
// Actually set (then write) AdMob app id to Info.plist if valid
plist.root.SetString("GADApplicationIdentifier", appId);
File.WriteAllText(plistPath, plist.WriteToString());
}
}
}
#endif

View File

@ -1,115 +0,0 @@
//
// PreProcessor.cs
// AppLovin MAX Unity Plugin
//
// Created by Santosh Bagadi on 11/7/19.
// Copyright © 2019 AppLovin. All rights reserved.
//
#if UNITY_ANDROID
using System.IO;
using System.Linq;
using System.Xml.Linq;
using UnityEditor;
using UnityEditor.Build;
#if UNITY_2018_1_OR_NEWER
using UnityEditor.Build.Reporting;
#endif
using UnityEngine;
namespace AppLovinMax.Mediation.Google.Editor
{
/// <summary>
/// A pre processor that will add the AdMob App ID to the <c>AndroidManifest.xml</c> file.
/// </summary>
public class PreProcessor :
#if UNITY_2018_1_OR_NEWER
IPreprocessBuildWithReport
#else
IPreprocessBuild
#endif
{
#if UNITY_2018_1_OR_NEWER
public void OnPreprocessBuild(BuildReport report)
#else
public void OnPreprocessBuild(BuildTarget target, string path)
#endif
{
// 安卓先不处理
if (true)
{
return;
}
var appId = MaxMediationGoogleUtils.GetAppIdFromAppLovinSettings("AdMobAndroidAppId");
if (string.IsNullOrEmpty(appId))
{
Debug.LogError("[AppLovin MAX] AdMob App ID is not set. Please enter a valid app ID within the ");
return;
}
var manifestPath = Path.Combine(Application.dataPath, "Plugins/Android/MaxMediationGoogle.androidlib/AndroidManifest.xml");
XDocument manifest;
try
{
manifest = XDocument.Load(manifestPath);
}
#pragma warning disable 0168
catch (IOException exception)
#pragma warning restore 0168
{
Debug.LogError("[AppLovin MAX] Google mediation AndroidManifest.xml is missing. Ensure that MAX Google mediation plugin is imported correctly.");
return;
}
// Get the `manifest` element.
var elementManifest = manifest.Element("manifest");
if (elementManifest == null)
{
Debug.LogError("[AppLovin MAX] Google mediation AndroidManifest.xml is invalid. Ensure that MAX Google mediation plugin is imported correctly.");
return;
}
// Get the `application` element under `manifest`.
var elementApplication = elementManifest.Element("application");
if (elementApplication == null)
{
Debug.LogError("[AppLovin MAX] Google mediation AndroidManifest.xml is invalid. Ensure that MAX Google mediation plugin is imported correctly.");
return;
}
// Get all the `meta-data` elements under `application`.
var adMobMetaData = elementApplication.Descendants().First(element => element.Name.LocalName.Equals("meta-data"));
XNamespace androidNamespace = "http://schemas.android.com/apk/res/android";
if (!adMobMetaData.FirstAttribute.Name.Namespace.Equals(androidNamespace) ||
!adMobMetaData.FirstAttribute.Name.LocalName.Equals("name") ||
!adMobMetaData.FirstAttribute.Value.Equals("com.google.android.gms.ads.APPLICATION_ID"))
{
Debug.LogError("[AppLovin MAX] Google mediation AndroidManifest.xml is invalid. Ensure that MAX Google mediation plugin is imported correctly.");
return;
}
var lastAttribute = adMobMetaData.LastAttribute;
// Log error if the AdMob App ID is not set.
if (!lastAttribute.Name.LocalName.Equals("value"))
{
Debug.LogError("[AppLovin MAX] Google mediation AndroidManifest.xml is invalid. Ensure that MAX Google mediation plugin is imported correctly.");
}
// Set the App ID value.
lastAttribute.Value = appId;
// Save the updated manifest file.
manifest.Save(manifestPath);
}
public int callbackOrder
{
get { return 0; }
}
}
}
#endif

View File

@ -3,7 +3,6 @@ guid: a141703acd55a48c2a3e6e6599f90c64
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/InMobi/Editor - al_max_export_path-MaxSdk/Mediation/InMobi/Editor
- al_max_export_path-MaxSdk\Mediation\InMobi\Editor
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}

View File

@ -1,12 +1,12 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<dependencies> <dependencies>
<!-- <androidPackages> <!-- <androidPackages>
<androidPackage spec="com.applovin.mediation:inmobi-adapter:10.0.8.1" /> <androidPackage spec="com.applovin.mediation:inmobi-adapter:10.1.4.3" />
<androidPackage spec="com.squareup.picasso:picasso:2.71828" /> <androidPackage spec="com.squareup.picasso:picasso:2.71828" />
<androidPackage spec="com.android.support:recyclerview-v7:28.+" /> <androidPackage spec="com.android.support:recyclerview-v7:28.+" />
<androidPackage spec="com.android.support:customtabs:28.+" /> <androidPackage spec="com.android.support:customtabs:28.+" />
</androidPackages> --> </androidPackages> -->
<iosPods> <iosPods>
<iosPod name="AppLovinMediationInMobiAdapter" version="10.0.8.1" /> <iosPod name="AppLovinMediationInMobiAdapter" version="10.5.6.0" />
</iosPods> </iosPods>
</dependencies> </dependencies>

View File

@ -3,7 +3,6 @@ guid: bc66a0ef4503843ee9b1bf1b1e867367
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/InMobi/Editor/Dependencies.xml - al_max_export_path-MaxSdk/Mediation/InMobi/Editor/Dependencies.xml
- al_max_export_path-MaxSdk\Mediation\InMobi\Editor\Dependencies.xml
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:

View File

@ -3,7 +3,6 @@ guid: 531d860cac61f47d19e32f526470ae43
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/IronSource/Editor - al_max_export_path-MaxSdk/Mediation/IronSource/Editor
- al_max_export_path-MaxSdk\Mediation\IronSource\Editor
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}

View File

@ -1,13 +1,13 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<dependencies> <dependencies>
<!-- <androidPackages> <!-- <androidPackages>
<androidPackage spec="com.applovin.mediation:ironsource-adapter:7.2.3.1.0"> <androidPackage spec="com.applovin.mediation:ironsource-adapter:7.5.0.0.1">
<repositories> <repositories>
<repository>https://android-sdk.is.com/</repository> <repository>https://android-sdk.is.com/</repository>
</repositories> </repositories>
</androidPackage> </androidPackage>
</androidPackages> --> </androidPackages> -->
<iosPods> <iosPods>
<iosPod name="AppLovinMediationIronSourceAdapter" version="7.2.3.1.0" /> <iosPod name="AppLovinMediationIronSourceAdapter" version="7.5.0.0.0" />
</iosPods> </iosPods>
</dependencies> </dependencies>

View File

@ -3,7 +3,6 @@ guid: 19262406303f04f05b14b31b3c734d35
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/IronSource/Editor/Dependencies.xml - al_max_export_path-MaxSdk/Mediation/IronSource/Editor/Dependencies.xml
- al_max_export_path-MaxSdk\Mediation\IronSource\Editor\Dependencies.xml
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:

View File

@ -3,7 +3,6 @@ guid: db1de4066dc4e4290b3879b34fa87de2
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/Mintegral/Editor - al_max_export_path-MaxSdk/Mediation/Mintegral/Editor
- al_max_export_path-MaxSdk\Mediation\Mintegral\Editor
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<dependencies> <dependencies>
<!-- <androidPackages> <!-- <androidPackages>
<androidPackage spec="com.applovin.mediation:mintegral-adapter:16.2.11.0"> <androidPackage spec="com.applovin.mediation:mintegral-adapter:16.5.11.0">
<repositories> <repositories>
<repository>https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea</repository> <repository>https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea</repository>
</repositories> </repositories>
@ -9,6 +9,6 @@
<androidPackage spec="androidx.recyclerview:recyclerview:1.2.1" /> <androidPackage spec="androidx.recyclerview:recyclerview:1.2.1" />
</androidPackages> --> </androidPackages> -->
<iosPods> <iosPods>
<iosPod name="AppLovinMediationMintegralAdapter" version="7.1.9.0.0" /> <iosPod name="AppLovinMediationMintegralAdapter" version="7.4.3.0.0" />
</iosPods> </iosPods>
</dependencies> </dependencies>

View File

@ -3,7 +3,6 @@ guid: 221b2a20a58a04f2cb4afb0779587206
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/Mintegral/Editor/Dependencies.xml - al_max_export_path-MaxSdk/Mediation/Mintegral/Editor/Dependencies.xml
- al_max_export_path-MaxSdk\Mediation\Mintegral\Editor\Dependencies.xml
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:

View File

@ -3,7 +3,6 @@ guid: 6b21a711d751f4e1d9c77b5fb984e112
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/Tapjoy/Editor - al_max_export_path-MaxSdk/Mediation/Tapjoy/Editor
- al_max_export_path-MaxSdk\Mediation\Tapjoy\Editor
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}

View File

@ -1,13 +1,13 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<dependencies> <dependencies>
<!-- <androidPackages> <!-- <androidPackages>
<androidPackage spec="com.applovin.mediation:tapjoy-adapter:12.10.0.2"> <androidPackage spec="com.applovin.mediation:tapjoy-adapter:13.1.2.0">
<repositories> <repositories>
<repository>https://sdk.tapjoy.com/</repository> <repository>https://sdk.tapjoy.com/</repository>
</repositories> </repositories>
</androidPackage> </androidPackage>
</androidPackages> --> </androidPackages> -->
<iosPods> <iosPods>
<iosPod name="AppLovinMediationTapjoyAdapter" version="12.10.0.1" /> <iosPod name="AppLovinMediationTapjoyAdapter" version="13.1.2.0" />
</iosPods> </iosPods>
</dependencies> </dependencies>

View File

@ -3,7 +3,6 @@ guid: c5268a136291a461aad1c0175bccb266
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/Tapjoy/Editor/Dependencies.xml - al_max_export_path-MaxSdk/Mediation/Tapjoy/Editor/Dependencies.xml
- al_max_export_path-MaxSdk\Mediation\Tapjoy\Editor\Dependencies.xml
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:

View File

@ -3,7 +3,6 @@ guid: 30751f2dc322a40e588edfb7c978c9c0
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/UnityAds/Editor - al_max_export_path-MaxSdk/Mediation/UnityAds/Editor
- al_max_export_path-MaxSdk\Mediation\UnityAds\Editor
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<dependencies> <dependencies>
<!-- <androidPackages> <!-- <androidPackages>
<androidPackage spec="com.applovin.mediation:unityads-adapter:4.3.0.0" /> <androidPackage spec="com.applovin.mediation:unityads-adapter:4.8.0.0" />
</androidPackages> --> </androidPackages> -->
<iosPods> <iosPods>
<iosPod name="AppLovinMediationUnityAdsAdapter" version="4.3.0.0" /> <iosPod name="AppLovinMediationUnityAdsAdapter" version="4.8.0.1" />
</iosPods> </iosPods>
</dependencies> </dependencies>

View File

@ -3,7 +3,6 @@ guid: 9950f1cb0da1e43efbeca604db142076
labels: labels:
- al_max - al_max
- al_max_export_path-MaxSdk/Mediation/UnityAds/Editor/Dependencies.xml - al_max_export_path-MaxSdk/Mediation/UnityAds/Editor/Dependencies.xml
- al_max_export_path-MaxSdk\Mediation\UnityAds\Editor\Dependencies.xml
TextScriptImporter: TextScriptImporter:
externalObjects: {} externalObjects: {}
userData: userData:

Some files were not shown because too many files have changed in this diff Show More