If any exception or no_ads_fill was happened during the SDK Initing and loading or showing ads, SDK would return error code and cause with InitCallback and Listener callback of ad units, such as in onRewardedVideoAdShowFailed event of RewardedVideoListener you could get the Rewarded Video ad's error information with parameter ErrorResult.
The Error Code and Cause as below:
|Error Code||Error Message||Description|
|111||invalid request||SDK init failed for invalid argument error such as wrong AppKey or SDK Configuration error|
|121||network error||No network connection during init|
|131||server error||Server response code is not 200|
|132||server error||The data body returned by the server is empty|
|133||server error||The SDK failed to parse the data. It may be that the format of the data returned by the server is incorrect.|
|135||server error||Server response failure during SDK init, such as invalid response, timeout or the server experience failure, etc.|
|151||unknown internal error||Such as Activity is not available. Make sure the Activity will not be destroyed.|
|211||Invalid request||Load failed for invalid argument error such as wrong placementID or SDK Configuration error|
|221||network error||No network connection during loading|
|231||server error||Server response failure during loading, such as invalid response, timeout or the server experience failure, etc.|
|241||No ad fill||Ad request success but no ad was returned|
|242||SDK not initialized||Initialize SDK before loading ads|
|243||reached request cap||Reached ad request cap for ad loading|
|244||missing AdNetwork SDK/Adapter||The instance's AdNetwork SDK or adapter is not integrated correctly|
|245||adapter returned an error or no fill||The instance returns an error or no fill|
|251||unknown internal error||Such as Activity is not available. Make sure the Activity will not be destroyed.|
|311||invalid request||Show ad failed for invalid argument error such as scene doesn't exist|
|341||ad not ready||Check with isReady() before showing ads|
|342||SDK not initialized||Initialize SDK before showing any ads|
|343||reached scene impression cap||Reached scene cap for ad showing|
|345||failure||Internal error during showing|
|351||unknown internal error||Such as Activity is not available. Make sure the Activity will not be destroyed.|
1. Error Code 111 - SDK init: invalid request
Diagnosis: the request for SDK init is invalid, usually due to wrong parameters or SDK config error such as incorrect permissions inAndroidManifest.xml. Run following checks to find out which might have caused your problem:
- Invalid AppKey: make sure the AppKey in your code is exactly the same as the one obtained from OpenMediation
- Invalid activity: pass a legit activity object as a parameter to init(). As the best practice, initialize the SDK in the activity's onCreate event. (Please follow the instructions we provide inside Android SDK Integration on this page, under "7. Initialization".)
- WebView not supported: your current device does not support WebView on which the OpenMediation SDK depends. Find a proper device before retry.
- Missing required permissions in AndroidManifest.xml. Both INTERNET and ACCESS_NETWORK_STATE are required for the SDK to function properly. Make these two permissions are granted in AndroidManifest.xml. (Please follow the instructions we provide inside Android SDK Integration on this page, under "4. Update AndroidManifest.xml".)
2. Error Code 121 - SDK init: network error
Diagnosis: your current device has no network connection to the Internet.
Remedy: turn on your device's WiFi switch, or cellular network connection together with a valid SIM card.
3. Error Code 151 - SDK init: unknown error
Diagnosis: some unknow error, such as an activity was destroyed, or runtime exception, has occurred.
- First, check if your app destroyed the activity during SDK init. Neither pass a temporary activity as a parameter to the SDK, nor finish/destroy the activity during SDK init. A legit activity is required for the SDK to initialize itself as well as any necessary 3rd party AdNetwork's SDK. Any premature destruction of the activity will cause an unknown exception.
- If the problem still persists after step 1, contact our technical support by email or submitting a ticket with your logs, device and app config info.
4. Error Code 131 - SDK init: server error
Diagnosis: probable cause can be your unstable network connection.
Remedy: make sure to have astable connection to the Internet. If the problem still persists, contact our technical support by email or submitting a ticket with your logs, device and app config info.
5. Error Code 241 - Ads loading: No ad fill
Diagnosis: No available ads for loading. Probable causes are: waterfall weights and mediation rules setup, instance availability, device/app config.
Remedy: Run following checks to find out which might have caused your problem:
- Your app is enabled. If it's been deleted or disabled, contact our technical support by email or submitting a ticket with your logs.
- If you used our mediation feature, check your mediation rules setup to make sure there is at least one active instance whose waterfall weight is greater than 0
- Service restrictions due to device(no ad tracking)/region(no available ads)/network: switch to a new device, or IP address, or WiFi/cellular connection. Or add your device to the test device list to rule out possible restrictions
- Update your SDK to the latest version for some earlier versions may not be able to provide all of the features you need
- Should the problem persist, contact our technical support by email or submitting a ticket with your logs, device and app config info.
6. Error Code 242 - Ad loading: SDK not initialized
Diagnosis: SDK init() was not called in your app. (This is different from the init failed error.)
Remedy: add/locate init() in your code and make sure it was called before ads loading. We recommend to initialize the SDK in the activity's onCreate(), and not destroy the activity or use a temporary one. (Please follow the instructions we provide inside Android SDK Integration on this page, under "7. Initialization".)
7. Error Code 243 - Ad loading: reached impression cap
Diagnosis: impression frequency control caused your loading as request to return an error.
Remedy: check the cap config on OpenMediation's developer platform. Increase/lift the cap before trying again.
8. Error Code 244 - Instance loading failure: missing AdNetwork SDK/Adapter
Diagnosis: the required AdNetwork SDK/Adapter for the instance you are trying to load is missing.
Remedy: Add the missing AdNetwork SDK/Adapter. Please follow the instructions we provide inside Add Mediation Networks on this page to add the necessary AdNetwork SDKs & Adapters.
9. Error Code 245 - Instance loading failure: adapter returned an error
Diagnosis: some mediated AdNetwork failed to return an ad to load.
Remedy: Use the AdNetwork's error message to locate the cause. Usually the AdNetwork's help center can provide specific solutions. Some common ones are:
- No fill error: switch to a new device, or IP address, or WiFi/cellular connection. Or add your device to the test device list to rule out possible restrictions. Sometimes one can lower the instance's floor price set at the AdNetwork to increase fill rate in order to avoid this type of error.
- Cap reached error: Increase/lift the cap at the AdNetwork.
- Internal error such as timeout or unknown error: switch to another AdNetwork or retry after the AdNetwork recovers.
- Other error such as wrong parameters or invalid request: contact our technical support by email or submitting a ticket with your logs, device and app config info.
10. Ads showing
- Error Code 341 - Ad not ready: no ads in stock. Wait on onAvailable(), or check with isReady() before showing ads.
- Error Code 343 - Reached scene impression cap: increase/lift the cap.
- Error Code 311 - Invalid request: the scene corresponding to the PlacementId parameter doesn't exist.
- Error Code 351 - Unknown error: see the load and init section above.
- Error Code 345 - Adapter returned an error: see the AdNetwork's help center.
Article is closed for comments.