{ "id": "172983", "key": "MOD-2493", "fields": { "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "subtask": false }, "project": { "id": "10034", "key": "MOD", "name": "Appcelerator Modules", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [], "resolution": null, "resolutiondate": null, "created": "2019-02-10T20:04:55.000+0000", "priority": null, "labels": [], "versions": [], "issuelinks": [], "assignee": { "name": "shossain", "key": "shossain", "displayName": "Shak Hossain", "active": false, "timeZone": "America/Los_Angeles" }, "updated": "2019-02-13T10:07:51.000+0000", "status": { "description": "The issue is open and ready for the assignee to start work on it.", "name": "Open", "id": "1", "statusCategory": { "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do" } }, "components": [ { "id": "14509", "name": "Admob" } ], "description": "Can the ti.admob module please be adjusted to support the new Native Advanced admob ad units?\r\n\r\nI think that the ti.admob module will need to introduce a new adType constant of:\r\n{code:java}\r\nAdmob.AD_TYPE_NATIVE_ADVANCED\r\n{code}\r\n\r\nwhich I think could be implemented as follows;\r\n{code:java}\r\nSWIFT: static let unifiedNative: GADAdLoaderAdType\r\nOBJECTIVE-C: extern const GADAdLoaderAdType _Nonnull kGADAdLoaderAdTypeUnifiedNative\r\n{code}\r\n\r\nas per:\r\n[https://developers.google.com/admob/ios/api/reference/Constants?hl=en-GB#/c:@kGADAdLoaderAdTypeUnifiedNative|https://developers.google.com/admob/ios/api/reference/Constants?hl=en-GB#/c:@kGADAdLoaderAdTypeUnifiedNative]\r\n\r\nfor reference, the documentation for native ads is at:\r\n[https://developers.google.com/admob/ios/native/start|https://developers.google.com/admob/ios/native/start]\r\n\r\nBackground:\r\nAdmob now has 4 different ad unit types: banner, interstitial, rewarded and native advanced.\r\n\r\nI recently attended an admob presentation from Google where they suggested that native advanced sees 30% better CPM's compared to banner so this is now a pretty crucial feature for ti.admob. \r\n\r\nWhen I test native advanced ads in the iOS simulator using ti.admob and Titanium with Google's test ad unit ID (ie. ca-app-pub-3940256099942544/3986624511 per: [https://developers.google.com/admob/ios/native/start?hl=en-GB|https://developers.google.com/admob/ios/native/start?hl=en-GB]), the request always fails.\r\n\r\nI have tried testing with multiple ad dimensions \r\nie. \r\n100% width, 80dp height (smart banner)\r\n300dp width, 250dp height (m-rec)\r\n100% width, 140dp height (native banner)\r\n\r\nhowever invariably, the response is:\r\n\"Request Error: No ad to show.\"\r\n\r\nI have also tried setting up native advanced ad units in my admob account and testing with those admob account/unit id's however the same error occurs. I suspect this is because I am passing an adType of Admob.AD_TYPE_BANNER which seems to map to '0' when in fact I need to be passing a different argument there that maps to the UnifiedNative constant specified above.\r\n\r\nFor reference, here is an admob response from my titanium requests:\r\n\r\n{code:java}\r\n[INFO] Failed to receive banner ad: {\"error\":\"Request Error: No ad to show.\",\"adUnitId\":\"ca-app-pub-3940256099942544/3986624511\",\"bubbles\":true,\"type\":\"didFailToReceiveAd\",\"source\":{\"horizontalWrap\":true,\"visible\":true,\"touchEnabled\":true,\"top\":\"7dp\",\"extras\":{\"version\":\"3.5.3\",\"name\":\"StockLight\"},\"adBackgroundColor\":\"#fff\",\"testDevices\":[\"Simulator\"],\"requestAgent\":\"Appcelerator Titanium/7.5.0 (iPad/12.1; iOS; en_US;)\",\"left\":null,\"adUnitId\":\"ca-app-pub-3940256099942544/3986624511\",\"width\":300,\"contentURL\":\"https://stocklight.com\",\"debugEnabled\":false,\"adType\":0,\"keywords\":[\"stockmarket\",\"stocks\",\"investing\",\"buffett\",\"motley fool\",\"acorns\",\"asx\",\"dividend\",\"finance\",\"investment\",\"market\"],\"height\":250,\"tagForChildDirectedTreatment\":false},\"cancelBubble\":false}\r\n{code}\r\n\r\nI haven't tested admob's rewarded ads with ti.admob however I suspect they may also require introduction of a new ad type variable of Admob.AD_TYPE_REWARDED into the ti.admob module as well.", "attachment": [], "flagged": false, "summary": "ti.admob - Native Advanced support?", "creator": { "name": "cornflakesuperstar", "key": "cornflakesuperstar", "displayName": "Jason Kotchoff", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "cornflakesuperstar", "key": "cornflakesuperstar", "displayName": "Jason Kotchoff", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "comment": { "comments": [], "maxResults": 2, "total": 2, "startAt": 0 } } }