Announcement

Collapse
No announcement yet.

Shipping build won't create .ini file in GameDir()

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Shipping build won't create .ini file in GameDir()

    I'm trying to create a file in the root game folder in Android, but when I package it as shipping, it doesn't create the file. I've also set up the permissions to WRITE_EXTERNAL_STORAGE and READ_EXTERNAL_STORAGE. If I'm packaging as Development build it creates the file. So what DO I do?

    This is the code that I'm using:

    //FString ThePath = FString(FPlatformProcess::BaseDir());
    IPlatformFile& PlatformFile = FPlatformFileManager::Get().GetPlatformFile();

    FString SaveDirectory = FPaths::GameDir();
    FString FileName = FString("Feydom.ini");
    FString TextToSave = FString("Test");
    FString AbsoluteFilePath = SaveDirectory + "/" + FileName;

    // CreateDirectoryTree returns true if the destination
    // directory existed prior to call or has been created
    // during the call.
    if (PlatformFile.CreateDirectoryTree(*SaveDirectory))
    {
    bool Success = FFileHelper::SaveStringToFile(TextToSave, *AbsoluteFilePath);
    if (Success)
    {
    UE_LOG(LogTemp, Display, TEXT("Success creating and writing to file at path %s"), *AbsoluteFilePath);
    return true;
    }
    else
    {
    UE_LOG(LogTemp, Error, TEXT("Failure creating and writing to file at path %s"), *AbsoluteFilePath);
    return false;
    }
    }
    else
    {
    UE_LOG(LogTemp, Error, TEXT("Cant't create directory at path %s "), *AbsoluteFilePath);
    return false;
    }

    #2
    Use FAndroidMisc::GamePersistentDownloadDir() instead of FPaths::GameDir().

    Comment


      #3
      Originally posted by Chris Babcock View Post
      Use FAndroidMisc::GamePersistentDownloadDir() instead of FPaths::GameDir().
      Great! Thank you, this is exactly what I needed

      Comment

      Working...
      X