NonSdkApi
Stay organized with collections
Save and categorize content based on your preferences.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-07-24 UTC.
[null,null,["Last updated 2024-07-24 UTC."],[],[],null,["# NonSdkApi\n\n- [JSON representation](#SCHEMA_REPRESENTATION)\n- [NonSdkApiInsight](#NonSdkApiInsight)\n - [JSON representation](#NonSdkApiInsight.SCHEMA_REPRESENTATION)\n- [UpgradeInsight](#UpgradeInsight)\n - [JSON representation](#UpgradeInsight.SCHEMA_REPRESENTATION)\n- [PendingGoogleUpdateInsight](#PendingGoogleUpdateInsight)\n - [JSON representation](#PendingGoogleUpdateInsight.SCHEMA_REPRESENTATION)\n\nA non-sdk API and examples of it being called along with other metadata See \u003chttps://developer.android.com/distribute/best-practices/develop/restrictions-non-sdk-interfaces\u003e\n\n| JSON representation |\n|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"apiSignature\": string, \"invocationCount\": integer, \"list\": enum (/docs/test-lab/reference/toolresults/rest/v1beta3/GreyList), \"exampleStackTraces\": [ string ], \"insights\": [ { object (/docs/test-lab/reference/toolresults/rest/v1beta3/NonSdkApi#NonSdkApiInsight) } ] } ``` |\n\n| Fields ||\n|------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `apiSignature` | `string` The signature of the Non-SDK API |\n| `invocationCount` | `integer` The total number of times this API was observed to have been called. |\n| `list` | `enum (`[GreyList](/docs/test-lab/reference/toolresults/rest/v1beta3/GreyList)`)` Which list this API appears on |\n| `exampleStackTraces[]` | `string` Example stack traces of this API being called. |\n| `insights[]` | `object (`[NonSdkApiInsight](/docs/test-lab/reference/toolresults/rest/v1beta3/NonSdkApi#NonSdkApiInsight)`)` Optional debugging insights for non-SDK API violations. |\n\nNonSdkApiInsight\n----------------\n\nNon-SDK API insights (to address debugging solutions).\n\n| JSON representation |\n|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"matcherId\": string, \"exampleTraceMessages\": [ string ], // Union field `insight` can be only one of the following: \"upgradeInsight\": { object (/docs/test-lab/reference/toolresults/rest/v1beta3/NonSdkApi#UpgradeInsight) }, \"pendingGoogleUpdateInsight\": { object (/docs/test-lab/reference/toolresults/rest/v1beta3/NonSdkApi#PendingGoogleUpdateInsight) } // End of list of possible types for union field `insight`. } ``` |\n\n| Fields ||\n|------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `matcherId` | `string` A unique ID, to be used for determining the effectiveness of this particular insight in the context of a matcher. (required) |\n| `exampleTraceMessages[]` | `string` Optional sample stack traces, for which this insight applies (there should be at least one). |\n| Union field `insight`. `insight` can be only one of the following: ||\n| `upgradeInsight` | `object (`[UpgradeInsight](/docs/test-lab/reference/toolresults/rest/v1beta3/NonSdkApi#UpgradeInsight)`)` An insight indicating that the hidden API usage originates from the use of a library that needs to be upgraded. |\n| `pendingGoogleUpdateInsight` | `object (`[PendingGoogleUpdateInsight](/docs/test-lab/reference/toolresults/rest/v1beta3/NonSdkApi#PendingGoogleUpdateInsight)`)` An insight indicating that the hidden API usage originates from a Google-provided library. |\n\nUpgradeInsight\n--------------\n\nThis insight is a recommendation to upgrade a given library to the specified version, in order to avoid dependencies on non-SDK APIs.\n\n| JSON representation |\n|---------------------------------------------------------------|\n| ``` { \"packageName\": string, \"upgradeToVersion\": string } ``` |\n\n| Fields ||\n|--------------------|-------------------------------------------------------------------------------------------------------------------|\n| `packageName` | `string` The name of the package to be upgraded. |\n| `upgradeToVersion` | `string` The suggested version to upgrade to. Optional: In case we are not sure which version solves this problem |\n\nPendingGoogleUpdateInsight\n--------------------------\n\nThis insight indicates that the hidden API usage originates from a Google-provided library. Users need not take any action.\n\n| JSON representation |\n|-------------------------------------------|\n| ``` { \"nameOfGoogleLibrary\": string } ``` |\n\n| Fields ||\n|-----------------------|-----------------------------------------------------------------------------------|\n| `nameOfGoogleLibrary` | `string` The name of the Google-provided library with the non-SDK API dependency. |"]]