Hello all, I wanted to update you all on a solution that worked for me, and has continued to work so far.
My app was removed from the Google Play Store for similar problems and violations as you all have seen, and I have come across a solution that works because I have no ads, I do not monetize the app using ads, and I do not use Unity Analytics in the app whatsoever.
I did NOT include a privacy statement because I no longer need one, since I am not collecting any data at all. No analytics, no ads, no data collection of any kind.
After doing quite a bit of research, it appears that my problem was that Unity Analytics was collecting and sending basic device information in the background of my program. Some users have said that the best way to prevent this was to purchase the Premium version of Unity to shut this feature off, but many other users have said they have gotten limited success from it.
What I’ve done is disable hardware statistics in player settings, modify the Unity Connect Settings asset, and attempt to deactivate analytics at run time. I realize that it is very likely that these steps are redundant, and maybe even optional, but I really wanted to make sure this problem didn’t cause me to have my apps removed in the future.
These are the steps I’ve taken:
Disable Hardware Statistics in Player Settings:
Purpose: I am attempting to prevent Unity from collecting information about the devices it’s being used on, and sending that to Unity servers, which would require me to create a privacy statement.
- In Unity, in the toolbar, go to File > Build Settings
- In the Build Settings window, in the lower left-hand corner, click the “Player Settings…” button
- The Inspector will open displaying the Player Settings
- Select the “Android settings” tab in the Player Settings window if it has not already been selected
- Select the “Other Settings” drop down
- Under “Configuration”, select the “Disable HW Statistics” checkbox, and make sure it is checked
Manually Edit the Unity Connect Settings Asset.
Purpose: I am attempting to force Unity not to initialize Unity Analytics at start up. Creating a privacy policy and an opt-out interrogative feature would be cumbersome and unnecessary.
-
Build your Unity Project
-
Once it has finished building, leave Unity open and do not close Unity
-
Enter into your file hierarchy (for example, this would be opening up Windows Explorer)
-
In your file hierarchy, navigate to the project location where your Unity project is saved.
-
This was defined by you when you first created the app.
-
The folder should be named after your project.
-
When you are in the correct folder you will see folders like “Assets”, “Library”, “Packages”, “Logs”, etc.
-
In the project location, open the “ProjectSettings” folder
-
Open the UnityConnectSettings.asset file
-
Change the following settings in the file, some items left intentionally blank:
CrashReportingSettings:
m_EventUrl:
UnityPurchasingSettings:
m_Enabled: 0
m_TestMode: 0
UnityAnalyticsSettings:
m_Enabled: 0
m_TestMode: 0
m_InitializeOnStartup: 0
UnityAdsSettings:
m_Enabled: 0
m_InitializeOnStartup: 0
m_TestMode: 0
m_IosGameId: 0
m_AndroidGameID: 0
m_GameIds:
AndroidPlayer: 0
iPhonePlayer: 0
tvOSPlayer: 0
m_GameId: 0
PerformanceReportingSettings:
m_Enabled: 0
- Save the file
- You may close Unity at your leisure.
Disable all analytics at run-time:
Purpose: I am attempting to prevent Unity from changing some of the previous connection settings during run time due to background process that are beyond my control.
-
Create a method which will be accessed at startup
-
I personally created a class which has a static method that is executed at the start up of any scene.
-
Write the following method:
-
public static void disableAnylitics()
{
UnityEngine.Analytics.Analytics.enabled = false;
UnityEngine.Analytics.Analytics.deviceStatsEnabled = false;
UnityEngine.Analytics.Analytics.initializeOnStartup = false;
UnityEngine.Analytics.Analytics.limitUserTracking = false;
UnityEngine.Analytics.PerformanceReporting.enabled = false;
}
- In the event that Unity changed some of these values to true, re-setting them immediately will hopefully turn Unity Analytics off and prevent unwanted data collection
If you read this suggestion, let me, and everyone else in the thread, know how it went. Again, it's worked for me so far, but I do not have any ad or analytics features in my app. It's been a month since I uploaded the newest version, and I've yet to get a complaint or violation from the store.