Jump to content

[TOPIC: topicViewTemplate]
[GLOBAL: userSmallPhoto]
Photo

Appodeal SDK 2.6.0
Started by Aarbron Dec 13 2019 08:04 AM

70 replies to this topic
[TOPIC CONTROLS]
Page 3 of 3 1 2 3
[/TOPIC CONTROLS]
[modOptionsDropdown]
[/modOptionsDropdown]
[reputationFilter]
[TOPIC: post.html]
#51

Aarbron

[GLOBAL: userInfoPane.html]
Aarbron
  • Contributor

  • 223 posts
  • Corona SDK

@ojnab yes I can see the same crash, I haven't reproduced it though.



[TOPIC: post.html]
#52

Aarbron

[GLOBAL: userInfoPane.html]
Aarbron
  • Contributor

  • 223 posts
  • Corona SDK

I just tried iOS build with 3573 and beta Appodeal.

 

If the name of the app has a number first, space and another word, lets say "7 Dogs", when the build is successful it's created an empty folder with the name "7".

Also when you start the game, it shows a black screen for half a second and close.

 

When I use the stable version everything is back to normal.

 ['plugin.appodeal.beta.base'] = { publisherId = 'com.coronalabs' },
 ['plugin.appodeal.beta.GoogleAdMob'] = { publisherId = 'com.coronalabs' },
 ['plugin.appodeal.beta.StartApp'] = { publisherId = 'com.coronalabs' }


[TOPIC: post.html]
#53

vlads

[GLOBAL: userInfoPane.html]
vlads
  • Corona Geek

  • 1,055 posts
  • Corona Staff

Do you have GADApplicationIdentifier in your plist? Try adding something like

    iphone =
    {
        plist =
        {
            GADApplicationIdentifier = "ca-app-pub-3940256099942544~1458002511",
            NSAppTransportSecurity = { NSAllowsArbitraryLoads=true },
        },
    },

See if it helps with crashes.

EDIT: add entries to existing plist block, don't make new one, and use your App ID.



[TOPIC: post.html]
#54

Aarbron

[GLOBAL: userInfoPane.html]
Aarbron
  • Contributor

  • 223 posts
  • Corona SDK

Here is my plist block. It looks ok and works fine with stable version.

Btw tested on an old iPad2.

I test on iPhone X, 11 and iPad pro usually but not available right now.

iphone =
   	{
   	   xcassets = "Images.xcassets",
       plist =
        {
            GADApplicationIdentifier = "xxx",
            	
        	UILaunchStoryboardName = "LaunchScreen",
        	UIRequiredDeviceCapabilities = {"location-services" },
			NSLocationAlwaysUsageDescription = "This app would like to use location services.",
            NSLocationWhenInUseUsageDescription = "This app would like to use location services.",
            NSBluetoothAlwaysUsageDescription = "This app would like to access bluetooth.",
            
            NSAppTransportSecurity = 
              { 
            NSAllowsArbitraryLoads = true },
	        
	        --UIApplicationExitsOnSuspend = false,
	        UIPrerenderedIcon = true,
	        UIStatusBarHidden = true,
	        MinimumOSVersion = "8.3",
	    },
	},


[TOPIC: post.html]
#55

agramonte

[GLOBAL: userInfoPane.html]
agramonte
  • Corona Geek

  • 1,420 posts
  • Corona SDK

Ok. Let get to the bottom of this. I am on day 2 of using Appodeal 2.6.0 on one of my apps. I looked at how many active Android 10 devices I had in the last 2 days and it is very low. I guess Android 10 is not that readily available in LTAM. Most of my users are Android 9. No crashes so far. The usual ANRs

 

I am using 2020.3569. I upload a .aab not an apk. I use my own refresh timer. I don't rely on Appodeal's timer for banners. I use my own keys for Admob, Facebook and Applovin. They all display banner ads.

 

Here is my entire build settings:

--
-- For more information on build.settings, see the Project Build Settings guide at:
-- https://docs.coronalabs.com/guide/distribution/buildSettings
--

settings =
{
	splashScreen = 
    {
        enable = false
    },
	orientation =
	{
		-- Supported values for orientation:
		-- portrait, portraitUpsideDown, landscapeLeft, landscapeRight
		default = "portrait",
		supported = { "portrait", },
	},
	--
	-- Android section
	--
	android =
	{
		usesPermissions =
		{
			"android.permission.INTERNET",
			"com.android.vending.BILLING",
            "com.android.vending.CHECK_LICENSE",
            "android.permission.ACCESS_NETWORK_STATE",
            "android.permission.ACCESS_WIFI_STATE",
            "android.permission.ACCESS_COARSE_LOCATION"
		},
        usesFeatures =
		{
			{ name = "android.hardware.location.gps", required = false },
		},

        minSdkVersion = "15",

        manifestChildElements = 
        {
            -- Array of strings
            [[
            <uses-sdk tools:overrideLibrary="com.flurry.android.analytics.sdk, plugin.tapjoyInstall, com.tappx.sdk.android" />
            ]]
        },
        applicationChildElements =
        {
            [[
                <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID"
                    android:value="ca-app-pub-xxxxx"/> 
            ]],
            [[
                <meta-data android:name="com.tapjoy.appstore" android:value="Google"/>
            ]]
        },
        useGoogleServicesJson = true,
		facebookAppId = "xxxxx"
		
	},

	--
	-- iOS section
	--
	iphone =
	{
		xcassets = "Images.xcassets",
		plist =
		{
            UIStatusBarHidden = false,
			UILaunchStoryboardName = "LaunchScreen",
            FacebookAppID = "xxxx",  -- Replace XXXXXXXXXX with your Facebook App ID
            GADApplicationIdentifier = "ca-app-pub-xxx",
            CFBundleURLTypes =
            {
                { CFBundleURLSchemes = { "xxxxx", } }  -- Replace XXXXXXXXXX with your Facebook App ID
            },
            -- Whitelist Facebook apps
            LSApplicationQueriesSchemes =
            {
                "fb",  -- Needed for the facebook-v4a.isFacebookAppEnabled() API
                "fbapi",
                "fbauth2",
                "fb-messenger-api",
                "fbshareextension"
            }
		},
	},

	--
	-- Plugins section
	--
	plugins =
	{
        ["plugin.utf8"] =
        {
            publisherId = "com.coronalabs"
        },
		["plugin.GBCLanguageCabinet"] = {
            publisherId = "com.gamesbycandlelight"
        },
		["plugin.iap_badger"] =
        {
            -- required
            publisherId = "uk.co.happymongoose",
        },
        ["plugin.gamesparks"] =
        {
            publisherId = "com.gamesparks",
        },
        ["plugin.openssl"] =
        {
            publisherId = "com.coronalabs",
        },
        ["plugin.bit"] =
        {
            publisherId = "com.coronalabs"
        },
        ["plugin.advertisingId"] =
        {
            publisherId = "com.coronalabs"
        }, 
        ["plugin.google.iap.v3"] =
        {
            publisherId = "com.coronalabs",
            supportedPlatforms = { android=true }
        },
        
        ["plugin.amazon.iap"] =
        {
            publisherId = "com.coronalabs",
            supportedPlatforms = { ["android-kindle"]=true } 
        },
        ["CoronaProvider.gameNetwork.apple"] =
        {
            publisherId = "com.coronalabs",
            supportedPlatforms = { iphone=true }
        },
        ["plugin.idVerifySig"] =
        {
            publisherId = "com.cabagomez",
            supportedPlatforms = { iphone=true }
        },
        ["plugin.reviewPopUp"] =
        {
            publisherId = "tech.scotth",
            supportedPlatforms = { iphone=true }
        },
        ["plugin.tapjoyInstall"] =
        {
            publisherId = "com.cabagomez"
        },

        ["plugin.tappx"] = 
        { 
            publisherId = "com.cabagomez", 
            supportedPlatforms = { ["android"] = true } 
        },

        ["plugin.hostedplugin"] = {
            publisherId = "com.cabagomez",
            supportedPlatforms = { 
                iphone = false,
                android = { url="https:xxxxxxx@//xxxxxx/amazonads.tgz" },
                macos = false,
                win32 = false
            },
        },
        
        -- Appodeal
        ['plugin.appodeal.beta.base'] = { publisherId = 'com.coronalabs' },
        ['plugin.appodeal.beta.AdColony'] = { publisherId = 'com.coronalabs' },
        ['plugin.appodeal.beta.AppLovin'] = { publisherId = 'com.coronalabs' },
        ['plugin.appodeal.beta.Appnext'] = { publisherId = 'com.coronalabs' },
        ['plugin.appodeal.beta.Chartboost'] = { publisherId = 'com.coronalabs' },
        ['plugin.appodeal.beta.FacebookAudience'] = { publisherId = 'com.coronalabs' },
        ['plugin.appodeal.beta.GoogleAdMob'] = { publisherId = 'com.coronalabs' },
        ['plugin.appodeal.beta.InMobi'] = { publisherId = 'com.coronalabs' },
        ['plugin.appodeal.beta.IronSource'] = { publisherId = 'com.coronalabs' },
        ['plugin.appodeal.beta.Ogury'] = { publisherId = 'com.coronalabs' },
        ['plugin.appodeal.beta.Unity'] = { publisherId = 'com.coronalabs' },
        ['plugin.appodeal.beta.Vungle'] = { publisherId = 'com.coronalabs' },
        ['plugin.appodeal.beta.Yandex'] = { publisherId = 'com.coronalabs' },
        
        ["plugin.tenjin"] =
        {
            publisherId = "com.coronalabs"
        },
        
	},

	--
	-- Project section
	--
	excludeFiles =
	{
		-- Exclude unnecessary files for each platform
		all = { "Icon.png", "Icon-*dpi.png", "Images.xcassets", },
		android = { "LaunchScreen.storyboardc", },
	},
}



[TOPIC: post.html]
#56

agramonte

[GLOBAL: userInfoPane.html]
agramonte
  • Corona Geek

  • 1,420 posts
  • Corona SDK

So try the permissions settings I have on the top. That is my current guess. Maybe it is trying to get GPS access and it can't.



[TOPIC: post.html]
#57

Aarbron

[GLOBAL: userInfoPane.html]
Aarbron
  • Contributor

  • 223 posts
  • Corona SDK

@agramonte I'm not sure if your last post was for me.

 

I uploaded on App Store with stable version until there is a solution.

 

Also I just noticed that there is appodeal.isLoaded( ) and appodeal.canShow( ).

Which one should we use? Is there any difference?

Both look the same to me.



[TOPIC: post.html]
#58

agramonte

[GLOBAL: userInfoPane.html]
agramonte
  • Corona Geek

  • 1,420 posts
  • Corona SDK

@aarbron No. Not directed at you. I have not started migrating my apps to 2.6.x of Appodeal on iOS. I have no reason to update to 2.6.x on any of my apps. The current app that I am adding features happens to have the old version of Appodeal and is on Android so I am updating it.

 

All my post up to this point on this thread are related to Appodeal 2.6.x crashing on Android 10 while apparently loading an ad. Not sure when I'll get to the iOS version of the app but probably at some point this week after the updated version of the Android app is on Google and Amazon for at least a few days.


  • Aarbron likes this

[TOPIC: post.html]
#59

agramonte

[GLOBAL: userInfoPane.html]
agramonte
  • Corona Geek

  • 1,420 posts
  • Corona SDK

@vlad the only issue I have found with the plugin so far on Android is that the Facebook portion complains about this:

implementation 'com.android.support:recyclerview-v7:25.3.1'

Once I added it as a dependency the issue went away.



[TOPIC: post.html]
#60

agramonte

[GLOBAL: userInfoPane.html]
agramonte
  • Corona Geek

  • 1,420 posts
  • Corona SDK

@aarbron Just started updating the app and I am sorry to say I won't be updating to 2.6.0 this time around. I will need to update my machine for that to happen so I am staying on 2.5.13 until I am forced to upgrade. I just don't have the time at the moment. So I won't be able to help you with your iOS issues.



[TOPIC: post.html]
#61

Aarbron

[GLOBAL: userInfoPane.html]
Aarbron
  • Contributor

  • 223 posts
  • Corona SDK

@agramonte thank you, I will stay with the older version too for the iOS builds.

 

2.6.0 for android works perfectly for me but 2.6.1 needs work because of the crashes.

Haven't tested it again the last days though.

 

How about appodeal.isLoaded( ) and appodeal.canShow( ).

Which one should we use? Is there any difference?

Both look the same to me.

 

Vlad I guess you could give some answers if you have time :)



[TOPIC: post.html]
#62

ojnab

[GLOBAL: userInfoPane.html]
ojnab
  • Contributor

  • 614 posts
  • Corona SDK

@agramonte

Here are the specifics of the crash. Last update we did was 12 th of december.

The curve is growing with the percentage of Android 10 installs. For some strange reason it's been decreasing for the last couple of days. Including sunday where DAU is highest.

This leads me to think that some specific ads are causing it.

 

Attached File  crash.jpg   123.1KB   0 downloads



[TOPIC: post.html]
#63

ojnab

[GLOBAL: userInfoPane.html]
ojnab
  • Contributor

  • 614 posts
  • Corona SDK

@aarbron

I just did a build with Appodeal beta 2.6.1 for iOS.

It works great for me. It seems it fixed all the issues with misplaced ad windows and scaling.

 

What version of Xcode/iOS do you use?

I think the update needs to be built with iOS 13. Apple did some changes that affected the webviews the ads are shown in.

I built with db 3569 for iOS 13.3



[TOPIC: post.html]
#64

Aarbron

[GLOBAL: userInfoPane.html]
Aarbron
  • Contributor

  • 223 posts
  • Corona SDK

@ojnab

I build with 3573 and iOS 13.3.

3569 is giving me error as mentioned days ago.

 

2.6.1 is still problematic for me but the older version works fine.

(after build, if the app has a number in title like "6 Cats", creates an empty folder with the same name as the number and crashes in device)

 

 

Also 3574 is giving me a new "template not found" error.

 

There is a big mess and nobody is here to help.

 

I was a huge supporter of Corona but right now I'm checking my other options.

Many problems for many weeks continuously.

That's not acceptable and who knows what's coming next.



[TOPIC: post.html]
#65

ojnab

[GLOBAL: userInfoPane.html]
ojnab
  • Contributor

  • 614 posts
  • Corona SDK

@aarbron

Sorry I should have read your posts again before replying.

 

What happens if you remove the number and space in the title?

Is it still crashing on device then?

 

You do know you can call the build whatever and set the display name in the build settings?

CFBundleDisplayName = "6 Cats"


[TOPIC: post.html]
#66

agramonte

[GLOBAL: userInfoPane.html]
agramonte
  • Corona Geek

  • 1,420 posts
  • Corona SDK

@ojnab have you tried moving your ad unit priority up and down to see if you can determine what provider is the issue.

 

@aarbron All I can offer is what I have in my code. It might not make much sense because it is part of a larger library.

adProvider.isAvailable = function(adType)

    if adType == "offerWall" then -- Appodeal doesn't have offerwall
        return false
    end

    if adType == "rewardedVideo" then
        local isLoaded = appodeal.canShow( "rewardedVideo" )
        return isLoaded
    
    else -- Everything else.
        local isLoaded = appodeal.isLoaded( adType )
        return isLoaded

    end

    return false

end


[TOPIC: post.html]
#67

Aarbron

[GLOBAL: userInfoPane.html]
Aarbron
  • Contributor

  • 223 posts
  • Corona SDK

@ojnab

If I remove the number I don't get the empty folder but the app still crashes.

 

@agramonte 

What I see is that you use canShow for video and isLoaded for offerwall.

Thank you!



[TOPIC: post.html]
#68

agramonte

[GLOBAL: userInfoPane.html]
agramonte
  • Corona Geek

  • 1,420 posts
  • Corona SDK

@aarbron canshow for "rewardVideo" and isLoaded for everything else. Added comments.


  • Aarbron likes this

[TOPIC: post.html]
#69

Aarbron

[GLOBAL: userInfoPane.html]
Aarbron
  • Contributor

  • 223 posts
  • Corona SDK

SDK 2.6 is out of beta.

I wonder if Vlad is still working on it and if we are going to get it in stable version.

 

Also I did some tests today (sorry but it's not my main job and it's hard for me to spend much time) and the app crashes on iOS if the app name has more that 2 words and there is space between them.

 

For example:

Application name: Four Strings or 4 Strings -> crashes

 

Application name: FourStrings or 4Strings -> works fine



[TOPIC: post.html]
#70

ojnab

[GLOBAL: userInfoPane.html]
ojnab
  • Contributor

  • 614 posts
  • Corona SDK

FYI: We had no Android 10 crashes for the last 3 days on the live version.

I guess Appodeal or some ad provider did something on their backend.

Filtered out some bad ads or something. 


  • Aarbron likes this

[TOPIC: post.html]
#71

agramonte

[GLOBAL: userInfoPane.html]
agramonte
  • Corona Geek

  • 1,420 posts
  • Corona SDK

Of note I am finally getting the Amazon version up and realized that the latest beta version:

plugin.appodeal: 1.6.5b (SDK: 2.6.1)

works on Amazon.




[topic_controls]
Page 3 of 3 1 2 3
 
[/topic_controls]