x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

BUG: 4.10.4 Configurations Not Making it to iOS Device via Remote Build

We have created our app in windows 10 and have successfully remote compiled/deployed using DeltaCopy and the UE4 4.10.4 source code. Our team has been doing this for a while now and are not new to the process. Our problem right now is that we have noticed that none of our config settings have made it onto the device. Our goal is to get the TapJoy plugin executing.

Along the way we have taken all of the documented steps to set up an account and put in the proper config settings like so:

Project/Config/DefaultEngine.ini

 [Advertising]
 DefaultProviderName=IOSTapJoy
  
 [TapJoy]
 AppID=our_app_id
 SecretKey=our_secret_key
 CurrencyString=USD ($)
 

Project/Config/IOS/DefaultIOSEngine.ini

 [Advertising]
 DefaultProviderName=IOSTapJoy
 
 [Plugins]
 +EnabledPlugins="IOSTapJoy"

We've even made sure to enable the plugin and have verified the build process picks it up while compiling. What we can't figure out is why (after we pull the logs from the device) the devices' Application/Saved/Config directory is completely empty but the Application/Saved/Config/IOS directory has files such as Engine.ini and Game.ini that are completely blank.

My best guess was that our file locations for our project (DefaultXXX.ini, etc) were off and that we should have put them in Project/Config/IOS rather than Project/Config. So we did that and rebuilt/deployed/ran and still receive the following log warning from the device:

 [2016.03.04-20.05.32:356][456]LogAdvertising:Warning: Failed to find Advertising provider named IOSAdvertising.

So, it is obvious to me that the configuration settings that I specified above are not being deployed properly at all. Please fix and advice in the meantime how I can overcome this issue. We wanted to roll very soon!

Thanks, - Jeff

Edit: Added image to help visual people like myself! =)alt text

Product Version: UE 4.10
Tags:
more ▼

asked Mar 04 '16 at 08:15 PM in Bug Reports

avatar image

jeffvoigt
423 19 34 61

avatar image Ravlek STAFF Mar 04 '16 at 09:51 PM

So having been working with you the last few days, this is a code project and not a content-only project, correct? There is a bug in 4.10, fixed in 4.11 where the ini files for content-only projects are sometimes not being read. However, that usually exhibits much earlier during the build process.

That being said, I feel like I have something similar to this in the last couple of weeks when working with some of our internal projects. The ini files will be empty as everything should be coalesced in to DefaultEngine.ini and such in the Content directory. But, I too have experienced not everything showing up in the coalesced ini file.

As a workaround in the short term. Put all of the IOS ini sections in your Game/Config/DefaultEngine.ini and remove the DefaultProviderName from the Engine/Config/IOS/IOSEngine.ini. The one in the Engine is just overriding what you set in your DefaultEngine.ini because of the way we coalesce things.

-Pete

avatar image jeffvoigt Mar 04 '16 at 09:55 PM

This is a code project. Correct. I will do what you suggested and get back to you. So you are saying I don't need an IOS sub directory in my project / config directory at all? I thought that was required back in 4.8ish =)

I also don't know what you mean by "content" directory unless you are referring to the project/config directory.

avatar image Ravlek STAFF Mar 04 '16 at 10:02 PM

Well, you don't need it if you don't have anything to put into it. Normally, that is where the Project Settings IOS data is placed, so I wouldn't just get rid of it. But do all of the advertising items in the DefaultEngine.ini for now until I can figure out what is up.

avatar image jeffvoigt Mar 04 '16 at 10:27 PM

I went ahead and did what you said and removed the [Advertising] section from the Engine/Config/IOS/IOSEngine.ini. Still nothing. When I use the iPhonePhonePackager to pull all documents (Backup Documents button) and look in the config directory. I have several ini files and ALL of them are completely black. I'm not even sure how it throws the warning that it could not find the IOSAdvertising provider since all of the config files are empty...

avatar image Ravlek STAFF Mar 04 '16 at 10:33 PM

Those are always going to be empty. The actual files that it reads are in the Content directory which you don't have access to getting off of the phone because it isn't in the Documents directory. It's in the installed application location. You need to look at the staging directory. Game/Saved/StagedBuilds/IOS/cookeddata/gamename/config is where they will reside unless you are using pak files in which case they will be in the pak files.

If you removed everything and did a build and package, then something is not updating correctly because the staging directory is wiped on every package and recreated (except for Launch On which is its own beast).

Post a log of your package process and I'll see if something jumps out.

-Pete

avatar image jeffvoigt Mar 05 '16 at 10:51 PM

After you mentioned where the consolidated configuration files are located I cracked it opened and checked it out. It looks good (attached) and all of my settings seemed to have merged. However, the logs off of the device (attached) still seem to give the warning about not finding the default IOSAdvertising provider. I'm at a loss as to where it is picking it up. I'm not sure where to go from here... link text

avatar image jeffvoigt Mar 08 '16 at 01:13 PM

Should I open a new issue for this? I need someone from Epic to try and do a remote build (C++) with a project that enables TapJoy. It does not appear to be picking up the configuration settings even though the directory shows valid configurations.

avatar image Ravlek STAFF Mar 08 '16 at 06:25 PM

I'll take a look in the next day or so. I'm just about through all of the high priority issues for the next release, so I'll add this one to it.

avatar image jeffvoigt Mar 10 '16 at 06:25 PM

You don't have to look into TAPJOY per say. I wasn't aware that IOS had iAd. I'm trying to go with that now and followed all of the directions provided by the link textmatch3 documentation (including the code to include the modules) in the build file. I still get the following error from the device logs:

 Warning: ModuleManager: Module 'HTTPChunkInstaller' not found - its StaticallyLinkedModuleInitializers function is null.
 Warning: ModuleManager: Module 'OnlineSubsystemIOS' not found - its StaticallyLinkedModuleInitializers function is null.
 Warning: ModuleManager: Module 'OnlineSubsystemNull' not found - its StaticallyLinkedModuleInitializers function is null.
 Warning: ModuleManager: Module 'IOSAdvertising' not found - its StaticallyLinkedModuleInitializers function is null.

Added staged configuration files one resides in the config directory while the other resides in the config/ios directory since I followed the match3 example.link text

Did the match3 team do a c++ remote build option like I am?

avatar image Samantha Sutton ♦♦ STAFF Mar 15 '16 at 02:10 PM

Jeff,

Could you provide us with the full output error logs that display these errors? Also double check our documentation and make sure that you've set up your iOSAdvertising correctly.

avatar image jeffvoigt Mar 15 '16 at 02:20 PM

Sure. I've attached the log as well as our build.cs file. Keep in mind we are building remotely from our windows machine to mac. We've gone through all of the steps up until the app submission. We were going to do that soon.

avatar image Samantha Sutton ♦♦ STAFF Mar 17 '16 at 03:12 PM

Jeff,

Have you been able to replicate this same issue on a new project that was created on Windows and built remotely? I ran tests to demonstrate the same as what you are doing however, I did not run into the same issues that you have.

If you have full reproduction steps, I can run through the process again and if I find the same results, we can get this bug in the system.

Thanks! :)

avatar image jeffvoigt Mar 17 '16 at 03:20 PM

I just created a brand new v11p7 c++ project (using GitHub source) yesterday and brought in my blueprints/source. I will do another build and try it out and report back tomorrow as soon as I can find the iPad =)

avatar image jeffvoigt Mar 18 '16 at 06:12 PM

Here is the latest log. What could cause all of the linkages to be null?? link text

Attaching my android log as well. Verify similar. I must not have something configured or executing correctly... link text

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

FIGURED IT OUT. This thread helped but it sounds like you all have some bugs to work out for C++ source (GitHub) projects..

https://forums.unrealengine.com/showthread.php?67343-How-do-I-debug-refusal-to-connecto-to-Google-Play-services

The ONLY thing that worked was moving all of the [project].Target.cs code into the Project/[project].Build.cs file like so:

 using UnrealBuildTool;
 
 public class KeepinItWheel : ModuleRules
 {
     public KeepinItWheel(TargetInfo Target)
     {
         PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore" });
 
         PrivateDependencyModuleNames.AddRange(new string[] { "OnlineSubsystem" });
 
         if (Target.Platform == UnrealTargetPlatform.IOS)
         {
             PublicDependencyModuleNames.Add("OnlineSubsystemFacebook");
             PublicDependencyModuleNames.Add("OnlineSubsystemIOS");
             PublicDependencyModuleNames.Add("IOSAdvertising");
             PublicDependencyModuleNames.Add("MetalRHI");
         }
         else if (Target.Platform == UnrealTargetPlatform.Android)
         {
             PublicDependencyModuleNames.Add("OnlineSubsystemGooglePlay");
             PublicDependencyModuleNames.Add("AndroidAdvertising");
         }
         
         // Uncomment if you are using Slate UI
         // PrivateDependencyModuleNames.AddRange(new string[] { "Slate", "SlateCore" });
     }
 }
more ▼

answered Mar 18 '16 at 08:04 PM

avatar image

jeffvoigt
423 19 34 61

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question