com.xd.sdk.oversea 6.23.13 → 6.26.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/Editor/XDGOverseaGradleContextProvider.cs +48 -12
  2. package/Editor/XDOverseaGenerateGradleAdapter.cs +46 -22
  3. package/Plugins/Android/libs/XDGShare_6.26.2.aar +0 -0
  4. package/Plugins/Android/libs/{XDGThirdTrack_6.23.13.aar.meta → XDGShare_6.26.2.aar.meta} +1 -1
  5. package/Plugins/Android/libs/XDGThirdLogin_6.26.2.aar +0 -0
  6. package/Plugins/Android/libs/{XDGShare_6.23.13.aar.meta → XDGThirdLogin_6.26.2.aar.meta} +1 -1
  7. package/Plugins/Android/libs/XDGThirdTrack_6.26.2.aar +0 -0
  8. package/Plugins/Android/libs/{XDGThirdLogin_6.23.13.aar.meta → XDGThirdTrack_6.26.2.aar.meta} +1 -1
  9. package/Plugins/Android/libs/tweet-composer-3.3.1.aar +0 -0
  10. package/Plugins/{iOS/XDThirdTrackSDK.framework.meta → Android/libs/tweet-composer-3.3.1.aar.meta} +7 -3
  11. package/Plugins/Android/libs/tweet-ui-3.3.1.aar +0 -0
  12. package/Plugins/Android/libs/tweet-ui-3.3.1.aar.meta +32 -0
  13. package/Plugins/Android/libs/twitter-3.3.1.aar +0 -0
  14. package/Plugins/Android/libs/twitter-3.3.1.aar.meta +32 -0
  15. package/Plugins/Android/libs/twitter-core-3.3.1.aar +0 -0
  16. package/Plugins/Android/libs/twitter-core-3.3.1.aar.meta +32 -0
  17. package/Plugins/iOS/Resource/GoogleSignIn.bundle/Info.plist +0 -0
  18. package/Plugins/iOS/Resource/GoogleSignIn.bundle/PrivacyInfo.xcprivacy +122 -0
  19. package/Plugins/iOS/{XDThirdTrackSDK.framework/Modules/module.modulemap.meta → Resource/GoogleSignIn.bundle/PrivacyInfo.xcprivacy.meta} +1 -1
  20. package/Plugins/iOS/Resource/GoogleSignIn.bundle/ar.lproj/GoogleSignIn.strings +0 -12
  21. package/Plugins/iOS/Resource/GoogleSignIn.bundle/ca.lproj/GoogleSignIn.strings +0 -12
  22. package/Plugins/iOS/Resource/GoogleSignIn.bundle/cs.lproj/GoogleSignIn.strings +0 -12
  23. package/Plugins/iOS/Resource/GoogleSignIn.bundle/da.lproj/GoogleSignIn.strings +0 -12
  24. package/Plugins/iOS/Resource/GoogleSignIn.bundle/de.lproj/GoogleSignIn.strings +0 -12
  25. package/Plugins/iOS/Resource/GoogleSignIn.bundle/el.lproj/GoogleSignIn.strings +0 -12
  26. package/Plugins/iOS/Resource/GoogleSignIn.bundle/en_GB.lproj/GoogleSignIn.strings +0 -12
  27. package/Plugins/iOS/Resource/GoogleSignIn.bundle/es.lproj/GoogleSignIn.strings +0 -12
  28. package/Plugins/iOS/Resource/GoogleSignIn.bundle/es_MX.lproj/GoogleSignIn.strings +0 -12
  29. package/Plugins/iOS/Resource/GoogleSignIn.bundle/fi.lproj/GoogleSignIn.strings +0 -12
  30. package/Plugins/iOS/Resource/GoogleSignIn.bundle/fr.lproj/GoogleSignIn.strings +0 -12
  31. package/Plugins/iOS/Resource/GoogleSignIn.bundle/fr_CA.lproj/GoogleSignIn.strings +0 -12
  32. package/Plugins/iOS/Resource/GoogleSignIn.bundle/google.png +0 -0
  33. package/Plugins/iOS/Resource/GoogleSignIn.bundle/google@2x.png +0 -0
  34. package/Plugins/iOS/Resource/GoogleSignIn.bundle/google@3x.png +0 -0
  35. package/Plugins/iOS/Resource/GoogleSignIn.bundle/he.lproj/GoogleSignIn.strings +0 -12
  36. package/Plugins/iOS/Resource/GoogleSignIn.bundle/hi.lproj/GoogleSignIn.strings +0 -12
  37. package/Plugins/iOS/Resource/GoogleSignIn.bundle/hr.lproj/GoogleSignIn.strings +0 -12
  38. package/Plugins/iOS/Resource/GoogleSignIn.bundle/hu.lproj/GoogleSignIn.strings +0 -12
  39. package/Plugins/iOS/Resource/GoogleSignIn.bundle/id.lproj/GoogleSignIn.strings +0 -12
  40. package/Plugins/iOS/Resource/GoogleSignIn.bundle/it.lproj/GoogleSignIn.strings +0 -12
  41. package/Plugins/iOS/Resource/GoogleSignIn.bundle/ja.lproj/GoogleSignIn.strings +0 -12
  42. package/Plugins/iOS/Resource/GoogleSignIn.bundle/ko.lproj/GoogleSignIn.strings +0 -12
  43. package/Plugins/iOS/Resource/GoogleSignIn.bundle/ms.lproj/GoogleSignIn.strings +0 -12
  44. package/Plugins/iOS/Resource/GoogleSignIn.bundle/nb.lproj/GoogleSignIn.strings +0 -12
  45. package/Plugins/iOS/Resource/GoogleSignIn.bundle/nl.lproj/GoogleSignIn.strings +0 -12
  46. package/Plugins/iOS/Resource/GoogleSignIn.bundle/pl.lproj/GoogleSignIn.strings +0 -12
  47. package/Plugins/iOS/Resource/GoogleSignIn.bundle/pt.lproj/GoogleSignIn.strings +0 -12
  48. package/Plugins/iOS/Resource/GoogleSignIn.bundle/pt_BR.lproj/GoogleSignIn.strings +0 -12
  49. package/Plugins/iOS/Resource/GoogleSignIn.bundle/pt_PT.lproj/GoogleSignIn.strings +0 -12
  50. package/Plugins/iOS/Resource/GoogleSignIn.bundle/ro.lproj/GoogleSignIn.strings +0 -12
  51. package/Plugins/iOS/Resource/GoogleSignIn.bundle/ru.lproj/GoogleSignIn.strings +0 -12
  52. package/Plugins/iOS/Resource/GoogleSignIn.bundle/sk.lproj/GoogleSignIn.strings +0 -12
  53. package/Plugins/iOS/Resource/GoogleSignIn.bundle/sv.lproj/GoogleSignIn.strings +0 -12
  54. package/Plugins/iOS/Resource/GoogleSignIn.bundle/th.lproj/GoogleSignIn.strings +0 -12
  55. package/Plugins/iOS/Resource/GoogleSignIn.bundle/tr.lproj/GoogleSignIn.strings +0 -12
  56. package/Plugins/iOS/Resource/GoogleSignIn.bundle/uk.lproj/GoogleSignIn.strings +0 -12
  57. package/Plugins/iOS/Resource/GoogleSignIn.bundle/vi.lproj/GoogleSignIn.strings +0 -12
  58. package/Plugins/iOS/Resource/GoogleSignIn.bundle/zh_CN.lproj/GoogleSignIn.strings +0 -12
  59. package/Plugins/iOS/Resource/GoogleSignIn.bundle/zh_TW.lproj/GoogleSignIn.strings +0 -12
  60. package/Plugins/iOS/XDAdjustWrapperSDK.framework/Info.plist +0 -0
  61. package/Plugins/iOS/XDAdjustWrapperSDK.framework/XDAdjustWrapperSDK +0 -0
  62. package/Plugins/iOS/XDAppsFlyerWrapperSDK.framework/Info.plist +0 -0
  63. package/Plugins/iOS/XDAppsFlyerWrapperSDK.framework/XDAppsFlyerWrapperSDK +0 -0
  64. package/Plugins/iOS/XDFacebookWrapperSDK.framework/Info.plist +0 -0
  65. package/Plugins/iOS/XDFacebookWrapperSDK.framework/XDFacebookWrapperSDK +0 -0
  66. package/Plugins/iOS/XDFirebaseCrashlyticsWrapperSDK.framework/Info.plist +0 -0
  67. package/Plugins/iOS/XDFirebaseCrashlyticsWrapperSDK.framework/XDFirebaseCrashlyticsWrapperSDK +0 -0
  68. package/Plugins/iOS/XDFirebasePushWrapperSDK.framework/Headers/XDFirebasePushWrapperSDK.h +1 -0
  69. package/Plugins/iOS/XDFirebasePushWrapperSDK.framework/Headers/XDGFirebasePushWrapper.h +16 -0
  70. package/Plugins/iOS/{XDThirdTrackSDK.framework/Headers/XDThirdTrackSDK.h.meta → XDFirebasePushWrapperSDK.framework/Headers/XDGFirebasePushWrapper.h.meta} +1 -1
  71. package/Plugins/iOS/XDFirebasePushWrapperSDK.framework/Info.plist +0 -0
  72. package/Plugins/iOS/XDFirebasePushWrapperSDK.framework/XDFirebasePushWrapperSDK +0 -0
  73. package/Plugins/iOS/XDFirebaseWrapperSDK.framework/Info.plist +0 -0
  74. package/Plugins/iOS/XDFirebaseWrapperSDK.framework/XDFirebaseWrapperSDK +0 -0
  75. package/Plugins/iOS/XDGoogleWrapperSDK.framework/Info.plist +0 -0
  76. package/Plugins/iOS/XDGoogleWrapperSDK.framework/XDGoogleWrapperSDK +0 -0
  77. package/Plugins/iOS/XDLineWrapperSDK.framework/Headers/XDLineWrapperSDK-Swift.h +349 -0
  78. package/Plugins/iOS/{XDThirdTrackSDK.framework/Info.plist.meta → XDLineWrapperSDK.framework/Headers/XDLineWrapperSDK-Swift.h.meta} +1 -1
  79. package/Plugins/iOS/XDLineWrapperSDK.framework/Info.plist +0 -0
  80. package/Plugins/iOS/XDLineWrapperSDK.framework/Modules/XDLineWrapperSDK.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
  81. package/Plugins/iOS/{XDThirdTrackSDK.framework/XDThirdTrackSDK.meta → XDLineWrapperSDK.framework/Modules/XDLineWrapperSDK.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo.meta} +1 -1
  82. package/Plugins/iOS/{XDThirdTrackSDK.framework/Modules.meta → XDLineWrapperSDK.framework/Modules/XDLineWrapperSDK.swiftmodule/Project.meta} +1 -1
  83. package/Plugins/iOS/XDLineWrapperSDK.framework/Modules/XDLineWrapperSDK.swiftmodule/arm64-apple-ios.abi.json +9 -0
  84. package/Plugins/iOS/XDLineWrapperSDK.framework/Modules/XDLineWrapperSDK.swiftmodule/arm64-apple-ios.abi.json.meta +7 -0
  85. package/Plugins/iOS/XDLineWrapperSDK.framework/Modules/XDLineWrapperSDK.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  86. package/Plugins/iOS/XDLineWrapperSDK.framework/Modules/XDLineWrapperSDK.swiftmodule/arm64-apple-ios.swiftdoc.meta +7 -0
  87. package/Plugins/iOS/XDLineWrapperSDK.framework/Modules/XDLineWrapperSDK.swiftmodule/arm64-apple-ios.swiftmodule +0 -0
  88. package/Plugins/iOS/XDLineWrapperSDK.framework/Modules/XDLineWrapperSDK.swiftmodule/arm64-apple-ios.swiftmodule.meta +7 -0
  89. package/Plugins/iOS/{XDThirdTrackSDK.framework/Headers.meta → XDLineWrapperSDK.framework/Modules/XDLineWrapperSDK.swiftmodule.meta} +1 -1
  90. package/Plugins/iOS/XDLineWrapperSDK.framework/Modules/module.modulemap +5 -0
  91. package/Plugins/iOS/XDLineWrapperSDK.framework/XDLineWrapperSDK +0 -0
  92. package/Plugins/iOS/XDTwitterWrapperSDK.framework/Headers/XDTwitterWrapperSDK-Swift.h +5 -1
  93. package/Plugins/iOS/XDTwitterWrapperSDK.framework/Info.plist +0 -0
  94. package/Plugins/iOS/XDTwitterWrapperSDK.framework/Modules/XDTwitterWrapperSDK.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
  95. package/Plugins/iOS/XDTwitterWrapperSDK.framework/Modules/XDTwitterWrapperSDK.swiftmodule/arm64-apple-ios.abi.json +2 -2
  96. package/Plugins/iOS/XDTwitterWrapperSDK.framework/Modules/XDTwitterWrapperSDK.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  97. package/Plugins/iOS/XDTwitterWrapperSDK.framework/Modules/XDTwitterWrapperSDK.swiftmodule/arm64-apple-ios.swiftmodule +0 -0
  98. package/Plugins/iOS/XDTwitterWrapperSDK.framework/XDTwitterWrapperSDK +0 -0
  99. package/package.json +1 -1
  100. package/Plugins/Android/libs/XDGShare_6.23.13.aar +0 -0
  101. package/Plugins/Android/libs/XDGThirdLogin_6.23.13.aar +0 -0
  102. package/Plugins/Android/libs/XDGThirdTrack_6.23.13.aar +0 -0
  103. package/Plugins/iOS/XDThirdTrackSDK.framework/Headers/XDThirdTrackSDK.h +0 -18
  104. package/Plugins/iOS/XDThirdTrackSDK.framework/Info.plist +0 -0
  105. package/Plugins/iOS/XDThirdTrackSDK.framework/Modules/module.modulemap +0 -6
  106. package/Plugins/iOS/XDThirdTrackSDK.framework/XDThirdTrackSDK +0 -0
@@ -32,18 +32,27 @@ namespace XD.SDK.Oversea.Editor
32
32
  private const string GMS_CLASSPATH_AGP_7 = " id 'com.google.gms.google-services' version '4.3.15' apply false";
33
33
  private const string FIREBASE_CRASH_CLASSPATH = " classpath 'com.google.firebase:firebase-crashlytics-gradle:2.2.1'";
34
34
  private const string FIREBASE_CRASH_CLASSPATH_AGP_7 = " id 'com.google.firebase.crashlytics' version '2.9.5' apply false";
35
- private const string FACEBOOK_LOGIN_DEP = " implementation 'com.facebook.android:facebook-login:15.2.0'";
36
- private const string FACEBOOK_SHARE_DEP = " implementation 'com.facebook.android:facebook-share:15.2.0'";
37
- private const string TWITTER_DEP = " implementation 'com.twitter.sdk.android:twitter:3.3.0'";
38
- private const string TWITTE_COMPOSER_DEP = " implementation 'com.twitter.sdk.android:tweet-composer:3.3.0'";
35
+ private const string FACEBOOK_LOGIN_DEP = " implementation 'com.facebook.android:facebook-login:17.0.2'";
36
+ private const string FACEBOOK_SHARE_DEP = " implementation 'com.facebook.android:facebook-share:17.0.2'";
37
+ private const string OBSOLETE_TWITTER_DEP = " implementation 'com.twitter.sdk.android:twitter:3.3.0'";
38
+ private const string OBSOLETE_TWITTE_COMPOSER_DEP = " implementation 'com.twitter.sdk.android:tweet-composer:3.3.0'";
39
39
  private const string AF_INST_DEP = " implementation 'com.android.installreferrer:installreferrer:2.2'";
40
- private const string APPSFLYER_DEP = " implementation 'com.appsflyer:af-android-sdk:6.11.0'";
41
- private const string APPSFLYER_WRAPPER_DEP = " implementation 'com.appsflyer:unity-wrapper:6.10.30'";
40
+ private const string APPSFLYER_DEP = " implementation 'com.appsflyer:af-android-sdk:6.15.0'";
41
+ private const string APPSFLYER_WRAPPER_DEP = " implementation 'com.appsflyer:unity-wrapper:6.15.1'";
42
42
  private const string ADJUST_DEP = " implementation 'com.adjust.sdk:adjust-android:4.33.4'";
43
- private const string LINE_DEP = " implementation 'com.linecorp:linesdk:5.0.1'";
43
+ private const string OBSOLETE_LINE_DEP = " implementation 'com.linecorp:linesdk:5.0.1'";
44
44
 
45
45
  private const string CHROME_CUSTOM_TAB_DEP = " implementation 'androidx.browser:browser:1.4.0'";
46
46
 
47
+ private const string TwitterSupportPicasso = " implementation 'com.squareup.picasso:picasso:2.5.2'";
48
+ private const string TwitterSupportText = " implementation 'com.twitter:twitter-text:1.14.7'";
49
+ private const string TwitterSupportCoreUi = " implementation 'androidx.legacy:legacy-support-core-ui:1.0.0'";
50
+ private const string TwitterSupportRetrofitConvertGson = " implementation 'com.squareup.retrofit2:converter-gson:2.9.0'"; // Common 中也有,但是不影响,额外声明避免遗漏
51
+ private const string TwitterSupportAndroidXCore = " implementation 'androidx.core:core:1.5.0'";
52
+
53
+ private const string LineSdk = " implementation 'com.linecorp.linesdk:linesdk:5.8.1'";
54
+ private const string LineSupportViewModelKtx = " implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.1'"; // 原生 Demo 中使用 Firebase Crashlytics 使用的版本,不使用可能会造成 Duplicate Class 问题
55
+
47
56
  #endregion
48
57
 
49
58
  private HashSet<string> OBSOLETE_DEPS = new HashSet<string>()
@@ -94,8 +103,8 @@ namespace XD.SDK.Oversea.Editor
94
103
 
95
104
  private HashSet<string> TwitterIncludeDeps = new HashSet<string>()
96
105
  {
97
- TWITTER_DEP,
98
- TWITTE_COMPOSER_DEP
106
+ OBSOLETE_TWITTER_DEP,
107
+ OBSOLETE_TWITTE_COMPOSER_DEP
99
108
  };
100
109
 
101
110
  private HashSet<string> AppsflyerIncludeDeps = new HashSet<string>()
@@ -112,7 +121,22 @@ namespace XD.SDK.Oversea.Editor
112
121
 
113
122
  private HashSet<string> LineIncludeDeps = new HashSet<string>()
114
123
  {
115
- LINE_DEP,
124
+ OBSOLETE_LINE_DEP,
125
+ };
126
+
127
+ private readonly HashSet<string> _twitterSupportDeps = new HashSet<string>()
128
+ {
129
+ TwitterSupportPicasso,
130
+ TwitterSupportText,
131
+ TwitterSupportCoreUi,
132
+ TwitterSupportRetrofitConvertGson,
133
+ TwitterSupportAndroidXCore
134
+ };
135
+
136
+ private readonly HashSet<string> _lineSdkIncludeDeps = new HashSet<string>()
137
+ {
138
+ LineSdk,
139
+ LineSupportViewModelKtx,
116
140
  };
117
141
 
118
142
  public void OnPreprocessBuild(BuildReport report)
@@ -299,6 +323,11 @@ namespace XD.SDK.Oversea.Editor
299
323
  writerHelper.Delete(dep);
300
324
  }
301
325
 
326
+ foreach (var dep in _twitterSupportDeps)
327
+ {
328
+ writerHelper.Delete(dep);
329
+ }
330
+
302
331
  foreach (var dep in AppsflyerIncludeDeps)
303
332
  {
304
333
  writerHelper.Delete(dep);
@@ -313,7 +342,14 @@ namespace XD.SDK.Oversea.Editor
313
342
  {
314
343
  writerHelper.Delete(dep);
315
344
  }
345
+
346
+ foreach (var dep in _lineSdkIncludeDeps)
347
+ {
348
+ writerHelper.Delete(dep);
349
+ }
350
+
316
351
  writerHelper.Dispose();
352
+
317
353
  }
318
354
 
319
355
  public List<AndroidGradleContext> GetGradleContext()
@@ -435,7 +471,7 @@ namespace XD.SDK.Oversea.Editor
435
471
 
436
472
  if (configMd.twitter != null && !string.IsNullOrEmpty(configMd.twitter.consumer_key))
437
473
  {
438
- thirdPartyDeps.processContent.AddRange(TwitterIncludeDeps);
474
+ thirdPartyDeps.processContent.AddRange(_twitterSupportDeps);
439
475
  }
440
476
 
441
477
  if (configMd.appsflyer != null && (!string.IsNullOrEmpty(configMd.appsflyer.dev_key_android) || !string.IsNullOrEmpty(configMd.appsflyer.dev_key)))
@@ -450,7 +486,7 @@ namespace XD.SDK.Oversea.Editor
450
486
 
451
487
  if (configMd.line != null && !string.IsNullOrEmpty(configMd.line.channel_id))
452
488
  {
453
- thirdPartyDeps.processContent.AddRange(LineIncludeDeps);
489
+ thirdPartyDeps.processContent.AddRange(_lineSdkIncludeDeps);
454
490
  }
455
491
 
456
492
  if (thirdPartyDeps.processContent.Count > 0)
@@ -1,7 +1,6 @@
1
1
  #if UNITY_EDITOR && UNITY_ANDROID
2
- using System;
3
2
  using System.IO;
4
- using LC.Newtonsoft.Json.Linq;
3
+ using LC.Newtonsoft.Json;
5
4
  using TapTap.AndroidDependencyResolver.Editor;
6
5
  using UnityEditor.Android;
7
6
  using UnityEngine;
@@ -12,8 +11,11 @@ namespace XD.SDK.Mainland.Editor
12
11
  public class XDOverseaGenerateGradleAdapter : IPostGenerateGradleAndroidProject
13
12
  {
14
13
  private const string UnityLibraryName = "unityLibrary";
15
- private const string MatchText = "mavenCentral()";
16
- private const string Repo = "jcenter()";
14
+
15
+ private const string TwitterComposerArtifact = "tweet-composer-3.3.1";
16
+ private const string TwitterUiArtifact = "tweet-ui-3.3.1";
17
+ private const string TwitterTwitterArtifact = "twitter-3.3.1";
18
+ private const string TwitterCoreArtifact = "twitter-core-3.3.1";
17
19
 
18
20
  public int callbackOrder => AndroidGradleProcessor.CALLBACK_ORDER - 51;
19
21
 
@@ -22,10 +24,16 @@ namespace XD.SDK.Mainland.Editor
22
24
  var xdConfigJsonPath = XDGCommonEditorUtils.GetXDConfigPath();
23
25
  if (!File.Exists(xdConfigJsonPath))
24
26
  {
27
+ Debug.LogError("XDConfig.json not found.");
25
28
  return;
26
29
  }
27
30
 
28
- var configObj = JObject.Parse(File.ReadAllText(xdConfigJsonPath));
31
+ var configMd = JsonConvert.DeserializeObject<XDConfigModel>(File.ReadAllText(xdConfigJsonPath));
32
+ if (configMd == null)
33
+ {
34
+ Debug.LogError("Parse XDConfig.json failed.");
35
+ return;
36
+ }
29
37
 
30
38
  var rootPath = path;
31
39
  if (rootPath.Contains(UnityLibraryName))
@@ -33,32 +41,48 @@ namespace XD.SDK.Mainland.Editor
33
41
  rootPath = rootPath.Substring(0, rootPath.Length - UnityLibraryName.Length);
34
42
  }
35
43
 
36
- if (configObj["douyin"] != null)
37
- {
38
- FixRepositories(rootPath);
39
- }
44
+ FixTwitterDependencies(configMd, rootPath);
40
45
  }
41
46
 
42
- private static void FixRepositories(string rootPath)
47
+ private static void FixTwitterDependencies(XDConfigModel configMd, string rootPath)
43
48
  {
44
- #if UNITY_2022_2_OR_NEWER
45
- var settingsGradleFilePath = Path.Combine(rootPath, "settings.gradle");
46
- if (!File.Exists(settingsGradleFilePath)) return;
47
-
48
- var allContent = File.ReadAllText(settingsGradleFilePath);
49
+ if (configMd.twitter != null && !string.IsNullOrEmpty(configMd.twitter.consumer_key))
50
+ {
51
+ return;
52
+ }
49
53
 
50
- var startIndex = allContent.LastIndexOf(MatchText, StringComparison.Ordinal);
51
- if (startIndex == -1)
54
+ string buildGradleFilePath;
55
+ #if UNITY_2019_3_OR_NEWER
56
+ buildGradleFilePath = Path.Combine(rootPath, "unityLibrary/build.gradle");
57
+ #else
58
+ buildGradleFilePath = Path.Combine(rootPath, "build.gradle");
59
+ #endif
60
+ if (!File.Exists(buildGradleFilePath))
52
61
  {
53
- Debug.LogWarning(settingsGradleFilePath + "中没有找到字符串:" + MatchText);
62
+ Debug.LogWarning("Oversea Fix Dependencies failed, build.gradle file not found.");
54
63
  return;
55
64
  }
56
65
 
57
- var endIndex = startIndex + MatchText.Length;
66
+ var allContentLines = File.ReadAllLines(buildGradleFilePath);
58
67
 
59
- allContent = allContent.Insert(endIndex, "\n" + Repo);
60
- File.WriteAllText(settingsGradleFilePath, allContent);
61
- #endif
68
+ var hasChanged = false;
69
+ for (var i = 0; i < allContentLines.Length; i++)
70
+ {
71
+ var lineContent = allContentLines[i];
72
+ if (!lineContent.Contains(TwitterComposerArtifact)
73
+ && !lineContent.Contains(TwitterUiArtifact)
74
+ && !lineContent.Contains(TwitterTwitterArtifact)
75
+ && !lineContent.Contains(TwitterCoreArtifact)) continue;
76
+
77
+ hasChanged = true;
78
+ Debug.LogFormat($"Disable dependencies: {lineContent}");
79
+ allContentLines[i] = "// " + lineContent;
80
+ }
81
+
82
+ if (hasChanged)
83
+ {
84
+ File.WriteAllLines(buildGradleFilePath, allContentLines);
85
+ }
62
86
  }
63
87
  }
64
88
  }
@@ -1,5 +1,5 @@
1
1
  fileFormatVersion: 2
2
- guid: d673617eb856d4ed1a0da0eacc658709
2
+ guid: 71ad48a30aeb74c46998a27f756fa1df
3
3
  PluginImporter:
4
4
  externalObjects: {}
5
5
  serializedVersion: 2
@@ -1,5 +1,5 @@
1
1
  fileFormatVersion: 2
2
- guid: b2c8fee9407634db3be517213c6d8ba3
2
+ guid: 9a3ba5d8c9fc44612a75378f8a2f38d8
3
3
  PluginImporter:
4
4
  externalObjects: {}
5
5
  serializedVersion: 2
@@ -1,5 +1,5 @@
1
1
  fileFormatVersion: 2
2
- guid: 3d1e6abb9894a4232a4e6e2c80efa0d9
2
+ guid: 9d99cdf1d26014d038c7ebc05c718b53
3
3
  PluginImporter:
4
4
  externalObjects: {}
5
5
  serializedVersion: 2
@@ -1,6 +1,5 @@
1
1
  fileFormatVersion: 2
2
- guid: 6d0781680de7f403bb6deabf0c7637bb
3
- folderAsset: yes
2
+ guid: 2db11c7827cd43349e2d67dead05b7c2
4
3
  PluginImporter:
5
4
  externalObjects: {}
6
5
  serializedVersion: 2
@@ -13,10 +12,15 @@ PluginImporter:
13
12
  validateReferences: 1
14
13
  platformData:
15
14
  - first:
16
- Any:
15
+ Android: Android
17
16
  second:
18
17
  enabled: 1
19
18
  settings: {}
19
+ - first:
20
+ Any:
21
+ second:
22
+ enabled: 0
23
+ settings: {}
20
24
  - first:
21
25
  Editor: Editor
22
26
  second:
@@ -0,0 +1,32 @@
1
+ fileFormatVersion: 2
2
+ guid: 31967ea79b414a3b9c7c02fa8840a8b6
3
+ PluginImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ iconMap: {}
7
+ executionOrder: {}
8
+ defineConstraints: []
9
+ isPreloaded: 0
10
+ isOverridable: 0
11
+ isExplicitlyReferenced: 0
12
+ validateReferences: 1
13
+ platformData:
14
+ - first:
15
+ Android: Android
16
+ second:
17
+ enabled: 1
18
+ settings: {}
19
+ - first:
20
+ Any:
21
+ second:
22
+ enabled: 0
23
+ settings: {}
24
+ - first:
25
+ Editor: Editor
26
+ second:
27
+ enabled: 0
28
+ settings:
29
+ DefaultValueInitialized: true
30
+ userData:
31
+ assetBundleName:
32
+ assetBundleVariant:
@@ -0,0 +1,32 @@
1
+ fileFormatVersion: 2
2
+ guid: 63f308de74224cb5b979615ea6876ddf
3
+ PluginImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ iconMap: {}
7
+ executionOrder: {}
8
+ defineConstraints: []
9
+ isPreloaded: 0
10
+ isOverridable: 0
11
+ isExplicitlyReferenced: 0
12
+ validateReferences: 1
13
+ platformData:
14
+ - first:
15
+ Android: Android
16
+ second:
17
+ enabled: 1
18
+ settings: {}
19
+ - first:
20
+ Any:
21
+ second:
22
+ enabled: 0
23
+ settings: {}
24
+ - first:
25
+ Editor: Editor
26
+ second:
27
+ enabled: 0
28
+ settings:
29
+ DefaultValueInitialized: true
30
+ userData:
31
+ assetBundleName:
32
+ assetBundleVariant:
@@ -0,0 +1,32 @@
1
+ fileFormatVersion: 2
2
+ guid: 54e7c94f51be4370a439662d6575ecfd
3
+ PluginImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ iconMap: {}
7
+ executionOrder: {}
8
+ defineConstraints: []
9
+ isPreloaded: 0
10
+ isOverridable: 0
11
+ isExplicitlyReferenced: 0
12
+ validateReferences: 1
13
+ platformData:
14
+ - first:
15
+ Android: Android
16
+ second:
17
+ enabled: 1
18
+ settings: {}
19
+ - first:
20
+ Any:
21
+ second:
22
+ enabled: 0
23
+ settings: {}
24
+ - first:
25
+ Editor: Editor
26
+ second:
27
+ enabled: 0
28
+ settings:
29
+ DefaultValueInitialized: true
30
+ userData:
31
+ assetBundleName:
32
+ assetBundleVariant:
@@ -0,0 +1,122 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>NSPrivacyTracking</key>
6
+ <false/>
7
+ <key>NSPrivacyTrackingDomains</key>
8
+ <array/>
9
+ <key>NSPrivacyCollectedDataTypes</key>
10
+ <array>
11
+ <dict>
12
+ <key>NSPrivacyCollectedDataType</key>
13
+ <string>NSPrivacyCollectedDataTypeName</string>
14
+ <key>NSPrivacyCollectedDataTypeLinked</key>
15
+ <true/>
16
+ <key>NSPrivacyCollectedDataTypeTracking</key>
17
+ <false/>
18
+ <key>NSPrivacyCollectedDataTypePurposes</key>
19
+ <array>
20
+ <string>NSPrivacyCollectedDataTypePurposeAppFunctionality</string>
21
+ </array>
22
+ </dict>
23
+ <dict>
24
+ <key>NSPrivacyCollectedDataType</key>
25
+ <string>NSPrivacyCollectedDataTypeEmailAddress</string>
26
+ <key>NSPrivacyCollectedDataTypeLinked</key>
27
+ <true/>
28
+ <key>NSPrivacyCollectedDataTypeTracking</key>
29
+ <false/>
30
+ <key>NSPrivacyCollectedDataTypePurposes</key>
31
+ <array>
32
+ <string>NSPrivacyCollectedDataTypePurposeAppFunctionality</string>
33
+ </array>
34
+ </dict>
35
+ <dict>
36
+ <key>NSPrivacyCollectedDataType</key>
37
+ <string>NSPrivacyCollectedDataTypePhoneNumber</string>
38
+ <key>NSPrivacyCollectedDataTypeLinked</key>
39
+ <true/>
40
+ <key>NSPrivacyCollectedDataTypeTracking</key>
41
+ <false/>
42
+ <key>NSPrivacyCollectedDataTypePurposes</key>
43
+ <array>
44
+ <string>NSPrivacyCollectedDataTypePurposeAppFunctionality</string>
45
+ </array>
46
+ </dict>
47
+ <dict>
48
+ <key>NSPrivacyCollectedDataType</key>
49
+ <string>NSPrivacyCollectedDataTypeOtherDataTypes</string>
50
+ <key>NSPrivacyCollectedDataTypeLinked</key>
51
+ <true/>
52
+ <key>NSPrivacyCollectedDataTypeTracking</key>
53
+ <false/>
54
+ <key>NSPrivacyCollectedDataTypePurposes</key>
55
+ <array>
56
+ <string>NSPrivacyCollectedDataTypePurposeAppFunctionality</string>
57
+ <string>NSPrivacyCollectedDataTypePurposeAnalytics</string>
58
+ </array>
59
+ </dict>
60
+ <dict>
61
+ <key>NSPrivacyCollectedDataType</key>
62
+ <string>NSPrivacyCollectedDataTypeCoarseLocation</string>
63
+ <key>NSPrivacyCollectedDataTypeLinked</key>
64
+ <true/>
65
+ <key>NSPrivacyCollectedDataTypeTracking</key>
66
+ <false/>
67
+ <key>NSPrivacyCollectedDataTypePurposes</key>
68
+ <array>
69
+ <string>NSPrivacyCollectedDataTypePurposeAppFunctionality</string>
70
+ </array>
71
+ </dict>
72
+ <dict>
73
+ <key>NSPrivacyCollectedDataType</key>
74
+ <string>NSPrivacyCollectedDataTypeUserID</string>
75
+ <key>NSPrivacyCollectedDataTypeLinked</key>
76
+ <true/>
77
+ <key>NSPrivacyCollectedDataTypeTracking</key>
78
+ <false/>
79
+ <key>NSPrivacyCollectedDataTypePurposes</key>
80
+ <array>
81
+ <string>NSPrivacyCollectedDataTypePurposeAppFunctionality</string>
82
+ <string>NSPrivacyCollectedDataTypePurposeAnalytics</string>
83
+ </array>
84
+ </dict>
85
+ <dict>
86
+ <key>NSPrivacyCollectedDataType</key>
87
+ <string>NSPrivacyCollectedDataTypeDeviceID</string>
88
+ <key>NSPrivacyCollectedDataTypeLinked</key>
89
+ <true/>
90
+ <key>NSPrivacyCollectedDataTypeTracking</key>
91
+ <false/>
92
+ <key>NSPrivacyCollectedDataTypePurposes</key>
93
+ <array>
94
+ <string>NSPrivacyCollectedDataTypePurposeAnalytics</string>
95
+ </array>
96
+ </dict>
97
+ <dict>
98
+ <key>NSPrivacyCollectedDataType</key>
99
+ <string>NSPrivacyCollectedDataTypeOtherUsageData</string>
100
+ <key>NSPrivacyCollectedDataTypeLinked</key>
101
+ <true/>
102
+ <key>NSPrivacyCollectedDataTypeTracking</key>
103
+ <false/>
104
+ <key>NSPrivacyCollectedDataTypePurposes</key>
105
+ <array>
106
+ <string>NSPrivacyCollectedDataTypePurposeAnalytics</string>
107
+ </array>
108
+ </dict>
109
+ </array>
110
+ <key>NSPrivacyAccessedAPITypes</key>
111
+ <array>
112
+ <dict>
113
+ <key>NSPrivacyAccessedAPITypeReasons</key>
114
+ <array>
115
+ <string>CA92.1</string>
116
+ </array>
117
+ <key>NSPrivacyAccessedAPIType</key>
118
+ <string>NSPrivacyAccessedAPICategoryUserDefaults</string>
119
+ </dict>
120
+ </array>
121
+ </dict>
122
+ </plist>
@@ -1,5 +1,5 @@
1
1
  fileFormatVersion: 2
2
- guid: ce702868c80c44519a1008f729cf0dcc
2
+ guid: 2a3155b5b4f284c1c83dca7d17aae4e5
3
3
  DefaultImporter:
4
4
  externalObjects: {}
5
5
  userData:
@@ -4,18 +4,6 @@
4
4
  /* Long form sign-in button text */
5
5
  "Sign in with Google" = "تسجيل الدخول باستخدام Google";
6
6
 
7
- /* The title of the promotional prompt to install the Google app. */
8
- "PromoTitle" = "تسجيل الدخول باستخدام Google";
9
-
10
- /* The body message of the promotional prompt to install the Google app. */
11
- "PromoMessage" = "احصل على تطبيق Google المجاني وسجل الدخول إلى التطبيقات من خلال حساب Google. لا توجد حاجة لتذكر كلمات المرور.";
12
-
13
- /* The cancel button on the promotional prompt to install the Google app. */
14
- "PromoActionCancel" = "إلغاء";
15
-
16
- /* The install button on the promotional prompt to install the Google app. */
17
- "PromoActionInstall" = "جلب";
18
-
19
7
  /* The text for the button for user to acknowledge and dismiss a dialog. */
20
8
  "OK" = "موافق";
21
9
 
@@ -4,18 +4,6 @@
4
4
  /* Long form sign-in button text */
5
5
  "Sign in with Google" = "Inicia la sessió amb Google";
6
6
 
7
- /* The title of the promotional prompt to install the Google app. */
8
- "PromoTitle" = "Inicia la sessió amb Google";
9
-
10
- /* The body message of the promotional prompt to install the Google app. */
11
- "PromoMessage" = "Obteniu l'aplicació Google gratuïta i inicieu la sessió a les aplicacions amb el vostre compte de Google. D'aquesta manera, ja no haureu de recordar cap més contrasenya.";
12
-
13
- /* The cancel button on the promotional prompt to install the Google app. */
14
- "PromoActionCancel" = "Cancel·la";
15
-
16
- /* The install button on the promotional prompt to install the Google app. */
17
- "PromoActionInstall" = "Obtén";
18
-
19
7
  /* The text for the button for user to acknowledge and dismiss a dialog. */
20
8
  "OK" = "D’acord";
21
9
 
@@ -4,18 +4,6 @@
4
4
  /* Long form sign-in button text */
5
5
  "Sign in with Google" = "Přihlásit se účtem Google";
6
6
 
7
- /* The title of the promotional prompt to install the Google app. */
8
- "PromoTitle" = "Přihlašujte se účtem Google";
9
-
10
- /* The body message of the promotional prompt to install the Google app. */
11
- "PromoMessage" = "Nainstalujte si zdarma aplikaci Google a přihlašujte se do aplikací pomocí účtu Google. Nebudete si už muset pamatovat spoustu hesel.";
12
-
13
- /* The cancel button on the promotional prompt to install the Google app. */
14
- "PromoActionCancel" = "Zrušit";
15
-
16
- /* The install button on the promotional prompt to install the Google app. */
17
- "PromoActionInstall" = "Instalovat";
18
-
19
7
  /* The text for the button for user to acknowledge and dismiss a dialog. */
20
8
  "OK" = "OK";
21
9
 
@@ -4,18 +4,6 @@
4
4
  /* Long form sign-in button text */
5
5
  "Sign in with Google" = "Log ind med Google";
6
6
 
7
- /* The title of the promotional prompt to install the Google app. */
8
- "PromoTitle" = "Log ind med Google";
9
-
10
- /* The body message of the promotional prompt to install the Google app. */
11
- "PromoMessage" = "Hent den gratis Google-app, og log ind på apps med din Google-konto. Du slipper for at huske på adgangskoder.";
12
-
13
- /* The cancel button on the promotional prompt to install the Google app. */
14
- "PromoActionCancel" = "Annuller";
15
-
16
- /* The install button on the promotional prompt to install the Google app. */
17
- "PromoActionInstall" = "Hent";
18
-
19
7
  /* The text for the button for user to acknowledge and dismiss a dialog. */
20
8
  "OK" = "OK";
21
9
 
@@ -4,18 +4,6 @@
4
4
  /* Long form sign-in button text */
5
5
  "Sign in with Google" = "Über Google anmelden";
6
6
 
7
- /* The title of the promotional prompt to install the Google app. */
8
- "PromoTitle" = "Über Google anmelden";
9
-
10
- /* The body message of the promotional prompt to install the Google app. */
11
- "PromoMessage" = "Installieren Sie die kostenlose Google App und melden Sie sich mit Ihrem Google-Konto in Apps an. So müssen Sie sich keine Passwörter mehr merken.";
12
-
13
- /* The cancel button on the promotional prompt to install the Google app. */
14
- "PromoActionCancel" = "Abbrechen";
15
-
16
- /* The install button on the promotional prompt to install the Google app. */
17
- "PromoActionInstall" = "Installieren";
18
-
19
7
  /* The text for the button for user to acknowledge and dismiss a dialog. */
20
8
  "OK" = "OK";
21
9
 
@@ -4,18 +4,6 @@
4
4
  /* Long form sign-in button text */
5
5
  "Sign in with Google" = "Συνδεθείτε με το Google";
6
6
 
7
- /* The title of the promotional prompt to install the Google app. */
8
- "PromoTitle" = "Συνδεθείτε με το Google";
9
-
10
- /* The body message of the promotional prompt to install the Google app. */
11
- "PromoMessage" = "Αποκτήστε τη δωρεάν εφαρμογή Google και συνδεθείτε σε εφαρμογές με το Λογαριασμό σας Google. Δεν χρειάζεται να απομνημονεύετε κωδικούς πρόσβασης.";
12
-
13
- /* The cancel button on the promotional prompt to install the Google app. */
14
- "PromoActionCancel" = "Ακύρωση";
15
-
16
- /* The install button on the promotional prompt to install the Google app. */
17
- "PromoActionInstall" = "Λήψη";
18
-
19
7
  /* The text for the button for user to acknowledge and dismiss a dialog. */
20
8
  "OK" = "ΟΚ";
21
9
 
@@ -4,18 +4,6 @@
4
4
  /* Long form sign-in button text */
5
5
  "Sign in with Google" = "Sign in with Google";
6
6
 
7
- /* The title of the promotional prompt to install the Google app. */
8
- "PromoTitle" = "Sign in with Google";
9
-
10
- /* The body message of the promotional prompt to install the Google app. */
11
- "PromoMessage" = "Get the free Google app and sign in to apps with your Google Account. No need to remember passwords.";
12
-
13
- /* The cancel button on the promotional prompt to install the Google app. */
14
- "PromoActionCancel" = "Cancel";
15
-
16
- /* The install button on the promotional prompt to install the Google app. */
17
- "PromoActionInstall" = "Get";
18
-
19
7
  /* The text for the button for user to acknowledge and dismiss a dialog. */
20
8
  "OK" = "OK";
21
9