mobfox / MobFox-Android-SDK

26 stars 21 forks source link

Interstitial not showing sometimes with real id (MalformedURLException: Protocol not found: No Ad Available) #84

Closed billyjoker closed 5 years ago

billyjoker commented 5 years ago

Hi, when i test using my real interstitial_id, sometimes goes well but most of them i get this error:

V/MobFoxAnalytics: dbg: ### start logging session ###
V/MobFoxAnalytics: dbg: ### analytics 'interstitial' is OFF ###
D/MobFoxAnalytics: dbg: ### age is 3600000
I/KERNEL: [ 6973.656798] host_wake = 33554432, bt_lpm.host_wake = 0
E/Volley: [1118] NetworkDispatcher.processRequest: Unhandled exception java.lang.RuntimeException: Bad URL No Ad Available java.lang.RuntimeException: Bad URL No Ad Available at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:171)
at com.android.volley.NetworkDispatcher.processRequest(NetworkDispatcher.java:120)
at com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:87)
Caused by: java.net.MalformedURLException: Protocol not found: No Ad Available
at java.net.URL.<init>(URL.java:176)
at java.net.URL.<init>(URL.java:125)
at com.android.volley.toolbox.HurlStack.executeRequest(HurlStack.java:92)
at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:131)
at com.android.volley.NetworkDispatcher.processRequest(NetworkDispatcher.java:120)  at com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:87) 
E/MobFoxInterstitial: Error getting interstitial: No Ad Available

Any idea? Thanks!!

nabriski commented 5 years ago

Haven't seen that one before, which SDK version? Do you have a network log of this? (such as Charles)

Thanks

billyjoker commented 5 years ago

Version 3.6.2 (gradle dependency). I have not yet a network log of this, i see the network calls enconded. I've tried to setup the Charles certificate with no success yet. Is there any step that i wouldhave dismissed ?

nabriski commented 5 years ago

Thanks. No, this is exactly what we need. Where do you encounter problems with the Charles certificate?

billyjoker commented 5 years ago

Request from Charles:

https://my.mobfox.com:443 |   | CONNECT | my.mobfox.com:443 |   |   | 67,25 KB | Sending request body | 
-- | -- | -- | -- | -- | -- | -- | -- | --
https://nvirginia-callbacks.mobfox.com:443 |   | CONNECT | nvirginia-callbacks.mobfox.com:443 |   |   | 517 bytes | Sending request body |  

But i still get the enconded request and response. I requested 30 times with onInterstitialFailed and 31th i've got onInterstitialLoaded

11-22 09:06:07.179 13700-13700/com.factoria.sexyruleta I/AdsManager: onInterstitialFailed
11-22 09:06:07.179 13700-13700/com.factoria.sexyruleta E/MobFoxInterstitial: Error getting interstitial: No Ad Available
11-22 09:06:07.179 13700-13785/com.factoria.sexyruleta D/MobFoxAnalytics: dbg: ### age is 3600000
11-22 09:06:07.629 13700-13789/com.factoria.sexyruleta E/Volley: [1068] NetworkDispatcher.processRequest: Unhandled exception java.lang.RuntimeException: Bad URL No Ad Available
    java.lang.RuntimeException: Bad URL No Ad Available
        at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:171)
        at com.android.volley.NetworkDispatcher.processRequest(NetworkDispatcher.java:120)
        at com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:87)
     Caused by: java.net.MalformedURLException: Protocol not found: No Ad Available
        at java.net.URL.<init>(URL.java:176)
        at java.net.URL.<init>(URL.java:125)
        at com.android.volley.toolbox.HurlStack.executeRequest(HurlStack.java:92)
        at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:131)
        at com.android.volley.NetworkDispatcher.processRequest(NetworkDispatcher.java:120) 
        at com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:87) 
11-22 09:06:07.859 13700-13700/com.factoria.sexyruleta V/MobFoxAnalytics: dbg: ### analytics: {"interstitial":"NO","banner":"NO"}
11-22 09:06:07.859 13700-13700/com.factoria.sexyruleta V/MobFoxAnalytics: dbg: ### crashReport: YES
11-22 09:06:07.859 13700-13700/com.factoria.sexyruleta V/MobFoxAnalytics: dbg: ### DMP: YES
11-22 09:06:07.869 13700-13700/com.factoria.sexyruleta V/MobFoxAnalytics: dbg: ### analytics 'interstitial' is OFF ###
11-22 09:06:07.869 13700-13700/com.factoria.sexyruleta D/startMoat: Starting MoatAnalytics
11-22 09:06:07.869 13700-13700/com.factoria.sexyruleta I/AdsManager: onInterstitialLoaded

About the Charles certificate i did this, Android section

billyjoker commented 5 years ago

UPDATE: i've tried again with Charles:

http://adrta.com/i?clid=mf&paid=mf&avid=17&caid=0d8m52vdw1pp6nhje7duw05qb&plid=cr-p0d3i8z39j442hgeorr4c7jd7&publisherId=30138&siteId=61637&priceBid=2.43&kv1=320X480&kv2=https%3A%2F%2Fplay.google.com%2Fstore%2Fapps%2Fdetails%3Fid%3Dcom.factoria.sexyruleta&kv4=95.22.144.107&kv5=61637&kv7=30138&kv11=071fd89f926e2faa555de7a8ea35239a&kv12=61637&kv14=2&kv16=40.4165&kv17=-3.7026&kv18=com.factoria.sexyruleta&kv23=ES_ORANGEESPANA_JAZZTELECOMS.A.&kv24=Mobile_InApp&kv25=Asus+ZE551ML&kv26=Android&kv30=0&cb=3824362D790777A38062D620824929ED | 200 | GET | adrta.com | /i?clid=mf&paid=mf&avid=17&caid=0d8m52vdw1pp6nhje7duw05qb&plid=cr-p0d3i8z39j442hgeorr4c7jd7&publisherId=30138&siteId=61637&priceBid=2.43&kv1=320X480&kv2=https%3A%2F%2Fplay.google.com%2Fstore%2Fapps%2Fdetails%3Fid%3Dcom.factoria.sexyruleta&kv4=95.22.144.107&kv5=61637&kv7=30138&kv11=071fd89f926e2faa555de7a8ea35239a&kv12=61637&kv14=2&kv16=40.4165&kv17=-3.7026&kv18=com.factoria.sexyruleta&kv23=ES_ORANGEESPANA_JAZZTELECOMS.A.&kv24=Mobile_InApp&kv25=Asus+ZE551ML&kv26=Android&kv30=0&cb=3824362D790777A38062D620824929ED | 292 ms | 1,35 KB | Complete | 1x1
-- | -- | -- | -- | -- | -- | -- | -- | --
https://nvirginia-callbacks.mobfox.com:443 |   | CONNECT | nvirginia-callbacks.mobfox.com:443 |   | 60533 ms | 7,63 KB | Complete |  

adrta request is now unencoded, but https://nvirginia-callbacks.mobfox.com is still with encoded request/response:

clid mf
paid mf
avid 17
caid 0d8m52vdw1pp6nhje7duw05qb
plid cr-p0d3i8z39j442hgeorr4c7jd7
publisherId 30138
siteId 61637
priceBid 2.43
kv1 320X480
kv2 https://play.google.com/store/apps/details?id=com.factoria.sexyruleta
kv4 95.22.144.107
kv5 61637
kv7 30138
kv11 071fd89f926e2faa555de7a8ea35239a
kv12 61637
kv14 2
kv16 40.4165
kv17 -3.7026
kv18 com.factoria.sexyruleta
kv23 ES_ORANGEESPANA_JAZZTELECOMS.A.
kv24 Mobile_InApp
kv25 Asus ZE551ML
kv26 Android
kv30 0
cb 3824362D790777A38062D620824929ED
billyjoker commented 5 years ago

Hello again, i could finally setup the charles certificate rightly:

Request: https://my.mobfox.com/request.php?v=3.6.2_core&u=Mozilla%2F5.0%20(Linux%3B%20Android%206.0.1%3B%20ASUS_Z00AD%20Build%2FMMB29P%3B%20wv)%20AppleWebKit%2F537.36%20(KHTML%2C%20like%20Gecko)%20Version%2F4.0%20Chrome%2F70.0.3538.80%20Mobile%20Safari%2F537.36&imp_instl=1&s=a99f2233fd1720a986ac50029b9f1f67&sub_bundle_id=com.factoria.sexyruleta&adspace_height=320&adspace_width=480&c_customevents=1&c_mraid=2&r_resp=vast30&dev_dnt=1&rt=android_app&r_type=video&v_api=vpaid20

Response:

{
    "error": "No Ad Available",
    "userMetadata": {
        "yob": null,
        "gender": null
    }
}
nabriski commented 5 years ago

Thanks. OK, this is a simple "no ad" response with misleading logs (which we'll fix). just means you've got no fill for the ad request. You can verify this by using our test hashes that always serve. https://mobfox.atlassian.net/wiki/spaces/PUMD/pages/466878507/Inventory+hashes+for+test+ads