Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CHANGELOG.md.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions LICENSE.md.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion README.md.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion SingularSDK.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion SingularSDK/Editor.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 16 additions & 0 deletions SingularSDK/Editor/Dependencies.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<dependencies>
<androidPackages>
<androidPackage spec="com.singular.sdk:singular_sdk:12.5.5">
<repositories>
<repository>https://maven.singular.net</repository>
</repositories>
</androidPackage>
<androidPackage spec="com.android.installreferrer:installreferrer:2.2"> </androidPackage>
<androidPackage spec="com.google.android.gms:play-services-appset:16.0.0"> </androidPackage>
<androidPackage spec="com.google.android.gms:play-services-ads-identifier:18.0.1"> </androidPackage>
</androidPackages>
<iosPods>
<iosPod name="Singular-SDK" version="12.4.2" minTargetSdk="12.0" bitcodeEnabled="false" addToAllTargets="false">
</iosPod>
</iosPods>
</dependencies>
7 changes: 7 additions & 0 deletions SingularSDK/Editor/Dependencies.xml.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion SingularSDK/Editor/Singular.Editor.asmdef.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

53 changes: 31 additions & 22 deletions SingularSDK/Editor/SingularPostBuild.cs
Original file line number Diff line number Diff line change
Expand Up @@ -46,9 +46,8 @@ static void AddiOSDependencies(string pathToBuiltProject)
pbxProject.AddFrameworkToProject(targetGuid, "AdSupport.framework", false);
pbxProject.AddFrameworkToProject(targetGuid, "Webkit.framework", false);
pbxProject.AddFrameworkToProject(targetGuid, "StoreKit.framework", false);
pbxProject.AddFrameworkToProject(targetGuid, "AdServices.framework", true);


pbxProject.AddFrameworkToProject(targetGuid, "AdServices.framework", true); // optional=true

// Add .dylib
pbxProject.AddFileToBuild(targetGuid, pbxProject.AddFile("usr/lib/libsqlite3.0.tbd", "Frameworks/libsqlite3.0.tbd", PBXSourceTree.Sdk));
pbxProject.AddFileToBuild(targetGuid, pbxProject.AddFile("usr/lib/libz.tbd", "Frameworks/libz.tbd", PBXSourceTree.Sdk));
Expand All @@ -64,10 +63,14 @@ static void AddiOSDependencies(string pathToBuiltProject)

public class SingularPostBuild: IPostGenerateGradleAndroidProject
{
public const string ACCESS_NETWORK_STATE = "android.permission.ACCESS_NETWORK_STATE";
public const string INTERNET = "android.permission.INTERNET";
public int callbackOrder { get { return 1; } }

public void OnPostGenerateGradleAndroidProject(string basePath)
{
ModifyAndroidManifestXmlFile(basePath);
}

private void ModifyAndroidManifestXmlFile(string basePath)
{
string appManifestPath = Path.Combine(basePath, "src/main/AndroidManifest.xml");

Expand All @@ -76,26 +79,26 @@ public void OnPostGenerateGradleAndroidProject(string basePath)
manifestFile.Load(appManifestPath);

// Add needed permissions if they are missing.
addPermissions(manifestFile);
AddPermissions(manifestFile);

manifestFile.Save(appManifestPath);

// Clean the manifest file.
cleanManifestFile(appManifestPath);
CleanManifestFile(appManifestPath);
}

public int callbackOrder { get { return 1; } }

static void addPermissions(XmlDocument manifest)
static void AddPermissions(XmlDocument manifest)
{
List<string> existingPermissions = new List<string>();

XmlElement manifestRoot = manifest.DocumentElement;

string USES_PERMISSION_ELEMENT = "uses-permission";

// Check if permissions are already there.
foreach (XmlNode node in manifestRoot.ChildNodes)
{
if (node.Name == "uses-permission")
if (node.Name == USES_PERMISSION_ELEMENT)
{
foreach (XmlAttribute attribute in node.Attributes)
{
Expand All @@ -104,22 +107,28 @@ static void addPermissions(XmlDocument manifest)
}
}

if (!existingPermissions.Contains(INTERNET))
string[] permissionsToAdd = new[]
{
XmlElement element = manifest.CreateElement("uses-permission");
element.SetAttribute("android__name", INTERNET);
manifestRoot.AppendChild(element);
}

if (!existingPermissions.Contains(ACCESS_NETWORK_STATE))
"android.permission.ACCESS_NETWORK_STATE",
"android.permission.INTERNET",
"BIND_GET_INSTALL_REFERRER_SERVICE",
"com.android.vending.CHECK_LICENSE",
"com.google.android.gms.permission.AD_ID"
};

string ANDROID_NAME_ATTRIBUTE = "android__name"; // see doc inside below function: cleanManifestFile
foreach (string permission in permissionsToAdd)
{
XmlElement element = manifest.CreateElement("uses-permission");
element.SetAttribute("android__name", ACCESS_NETWORK_STATE);
manifestRoot.AppendChild(element);
if (!existingPermissions.Contains(permission))
{
XmlElement element = manifest.CreateElement(USES_PERMISSION_ELEMENT);
element.SetAttribute(ANDROID_NAME_ATTRIBUTE, permission);
manifestRoot.AppendChild(element);
}
}
}

static void cleanManifestFile(String manifestPath)
static void CleanManifestFile(String manifestPath)
{
// Due to XML writing issue with XmlElement methods which are unable
// to write "android:[param]" string, we have wrote "android__[param]" string instead.
Expand Down
2 changes: 1 addition & 1 deletion SingularSDK/Editor/SingularPostBuild.cs.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion SingularSDK/Plugins.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion SingularSDK/Plugins/Android.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion SingularSDK/Plugins/Android/SingularUnityBridge.jar.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Binary file removed SingularSDK/Plugins/Android/collection-1.2.0.jar
Binary file not shown.
32 changes: 0 additions & 32 deletions SingularSDK/Plugins/Android/collection-1.2.0.jar.meta

This file was deleted.

Binary file removed SingularSDK/Plugins/Android/gson-2.10.1.jar
Binary file not shown.
32 changes: 0 additions & 32 deletions SingularSDK/Plugins/Android/gson-2.10.1.jar.meta

This file was deleted.

Binary file not shown.
32 changes: 0 additions & 32 deletions SingularSDK/Plugins/Android/installreferrer-release.jar.meta

This file was deleted.

Binary file not shown.
32 changes: 0 additions & 32 deletions SingularSDK/Plugins/Android/play-services-appset-16.0.0.aar.meta

This file was deleted.

Binary file not shown.
32 changes: 0 additions & 32 deletions SingularSDK/Plugins/Android/play-services-base-18.0.1.aar.meta

This file was deleted.

Binary file not shown.
32 changes: 0 additions & 32 deletions SingularSDK/Plugins/Android/play-services-basement-18.0.0.aar.meta

This file was deleted.

Binary file not shown.
Loading