Exporting to Android (MV Android Client)

Discussion in 'RPG Maker MV Tutorials' started by xilefian, Sep 29, 2017.

  1. Dantor

    Dantor Villager Member

    Messages:
    8
    Likes Received:
    2
    First Language:
    English
    Thank you! I will spend the day testing tomorrow.
     
    BattlebornProductions likes this.
  2. BattlebornProductions

    BattlebornProductions Villager Member

    Messages:
    9
    Likes Received:
    7
    First Language:
    English
    Primarily Uses:
    N/A
    You're welcome - I hope it helps!
    I know it's a long Process but one of the best ways to make sure you find what's breaking the code.
     
  3. BattlebornProductions

    BattlebornProductions Villager Member

    Messages:
    9
    Likes Received:
    7
    First Language:
    English
    Primarily Uses:
    N/A
    As stated previously, I did not have the chance to do a Proper Export to .APK.

    I am testing on a Samsung j7 Prime 32gb
    Model: SM-J727T1
    Android: 8.1.0

    To actually produce the .APK - it exported as a Debug Signed. This will install directly on the phone.
    If you export and the filename contains *unsigned* - the phone WILL NOT install.
    Debug is not meant for Release Versions but should help determine overall Performance.

    Install Debug
    [​IMG]

    Title Screen
    [​IMG]

    In-Game using Android Phone
    [​IMG]
     
  4. BattlebornProductions

    BattlebornProductions Villager Member

    Messages:
    9
    Likes Received:
    7
    First Language:
    English
    Primarily Uses:
    N/A
    Error received during Gameplay Test
    *Edit - I rechecked Android Studio under the Assets Folder.

    Howl.png DOES NOT EXIST as one of my .png options - at all. So now the question is, True Missing Files.
    We have the ability to remove unused files in the project - but is that inadvertently breaking the export (which should decrease file size) but will Test a Full Export which runs minimum 350mb (approx)

    Battle Scene
    [​IMG]
     
    Last edited: Oct 30, 2018
  5. Angio

    Angio Villager Member

    Messages:
    12
    Likes Received:
    6
    First Language:
    French
    Primarily Uses:
    RMMV
    The remove unused file options will miss some files you are referring in triggers on in script, or in some animation etc. it's a useful but imperfect tool. Do a full beta run of your game and make sure to manually add those files that were missed. On next export, simply merge folder without overwrite files from your old img and audio folder so you don't have to do it each time. This will leave updated file alone but add back missed files.

    When you have crash like that you can use F8 to find out what processes was being called and help you find the source that requires this file.
     
    BattlebornProductions likes this.
  6. BattlebornProductions

    BattlebornProductions Villager Member

    Messages:
    9
    Likes Received:
    7
    First Language:
    English
    Primarily Uses:
    N/A
    Thanks for the heads up on the removal. I was wondering if I could do what you just suggested.
    *Fist Bump

    ***Edit - Thanks @Angio - as I replaced 1 file, another was "missing"...
    then I realized - the files it is looking for are files that copy/pasted a weapon or spell and adjusted the animations.

    That being said - I just added all files and rebuilt.

    Webview Export
    • No BGM on Screen Touch
    • All Sound / Animations work
    • 110mb
    Crosswalk Export
    • BGM works on Screen Touch (silent until then)
    • All Sound / Animations work
    • 0.92gb
    As you can see, it works either way but Webview drops BGM while Crosswalk is largely bigger. In CW's defense, I did not use APK Bundle. It produces .AAB which now has its own Reader to check the .APK --- yea, confusing.

    Anyway - the purpose of the .AAB is so places like Google Play auto signs for you.
    These Screenshots are from the Crosswalk Flavour.
    [​IMG]
    [​IMG]
    [​IMG]
     
    Last edited: Oct 31, 2018
    Angio likes this.
  7. Dantor

    Dantor Villager Member

    Messages:
    8
    Likes Received:
    2
    First Language:
    English
    Thanks BattlebornProductions. Your suggestion helped me figure it out!

    I added the plugins included in Olivia's "Octopack Battler" project to a new empty project and tested the android deployment with Xilefian's method and Angio's fix. And it worked! So I realized it wasn't an issue with the plugins.

    So I started focusing on this: "If it is stopping on a known File, would need the name and error."

    The error was like 10 lines of gibberish (to a non programmer :p) but you made me think that maybe the whole ten lines were one single error and caused by one specific file.

    It said it was an m4a file error. So I googled that and figured out that it was a music file in the background music folder and that many other people have had problems with m4a encoding on mobile deployment.

    I read those posts and I was on my way to find those files in Olivia's project to reencode them but surprise, they weren't there! There were only .ogg versions of BGM files. But there were both .ogg and .m4a of every other sound file (located in all the other sound folders: /bgs, /me and /se). So I figured it was simply an issue of missing .m4a files.

    Before I encoded the .ogg files in /bgm into the missing .m4a files, I figured I'd have a look in a new blank rpgmaker project, just in case those ,m4a files were already there. And they were! So I just copied them over to Olivia's project, loaded rpg maker and deployed to android again.

    Then I went to Android Studio to follow Xilefian's method with Angio's fix once again:

    I edited the applicationId and changed the repositories order in their respective build.gradle file, then created the "assets" folder inside "app" and copied over the "www" folder from the rpgmaker deployment. Then I generated the APK and guess what...

    It didn't work!

    So I checked the app/assets/www/audio folder inside Android Studio and... would you believe it!? The /bgm subfolder with the .m4a files was missing, even though the "www" folder that I'd copied into "assets" included it!!

    So I copied the /bgm folder manually into Android Studio in the correct location (app/assets/www/audio/bgm) and created the APK.

    And BAM! It now works flawlessly on Android.

    Bottomline 1: Angio's fix makes Xilefian's method work again.

    Bottomline 2: the errors I was getting look complex to a non programmer they but were simply caused by missing .m4a files

    Bottomline 3: the /bgm folder vanished when copying the www folder into assets in Android Studio, despite verifying that they were in fact present in my rpgmaker export.

    I manually copied them to their correct location in the Android Studio assets folder and finally was able to generate an APK that worked!
     
    Last edited: Nov 1, 2018
    BattlebornProductions likes this.
  8. TehGuy

    TehGuy Villager Member

    Messages:
    21
    Likes Received:
    7
    First Language:
    English
    Don't know if anyone got to you yet or if you figured it out, but you have to update the google play libraries in libgoogeplay's build.gradle.

    Its currently set to use v15 in the current master branch while the new stuff is 16.0.0 and 16.0.1 respectively.

    so basically, you want those 2 lines to look like

    implementation 'com.google.android.gms:_play-services-games:16.0.0'
    implementation 'com.google.android.gms:_play-services-auth:16.0.1'

    edit: how i wish for an option to disable emoticons. Remove the '_' for it to work in Android Studio
     
    Dantor likes this.
  9. Angio

    Angio Villager Member

    Messages:
    12
    Likes Received:
    6
    First Language:
    French
    Primarily Uses:
    RMMV
    I'm not using Crosswalk as I was having some performance issue with it. I've seen many people saying they are having issue with sound and music with Webview. I never had, so I can't help much here.

    However keep in mind that before music or sound can play, it needs to be loaded. Sometimes it takes long enough that the scene playing it is over. The best solution for this is to use a preloader. I personally use SRdude preloader, but any preloader should work fine. So maybe try to put the sound and music that aren't loaded in a preloader and see the results. (don't forget they must be m4a files :) )
     
    Dantor and BattlebornProductions like this.
  10. BattlebornProductions

    BattlebornProductions Villager Member

    Messages:
    9
    Likes Received:
    7
    First Language:
    English
    Primarily Uses:
    N/A

    @Dantor I stripped those Audio Files out (much like you did) and came up with the same result:

    When creating a "New Project" - it's pulling from the "New Data" Folder inside the Install Path.
    At the same time, it is pulling BOTH .m4a and .ogg with precise reference to the .ogg in the .html file....
    Ok, I know that might've sounded like gibberrish too lol

    In other words - my .m4a errors were on Animation while BGM happened on my .ogg

    It's calling both versions of the Audio Files.
    ....Thanks for the Update - I'm back to the drawing board too
    *Fist Bump
     
    Dantor likes this.
  11. Dantor

    Dantor Villager Member

    Messages:
    8
    Likes Received:
    2
    First Language:
    English
    Awesome, thanks TehGuy
     
  12. Dantor

    Dantor Villager Member

    Messages:
    8
    Likes Received:
    2
    First Language:
    English
    Thanks a million BattlebornProductions. That's valuable information for me.
     
  13. about7

    about7 Veteran Veteran

    Messages:
    31
    Likes Received:
    9
    First Language:
    English
    Primarily Uses:
    RMMV
    Thank you for sharing :)
     
    Dantor likes this.
  14. Eliaquim

    Eliaquim Veteran Veteran

    Messages:
    116
    Likes Received:
    18
    Location:
    Brazil - Rio de Janeiro
    First Language:
    Portuguese - Br
    Primarily Uses:
    RMMV
    Hi guys!
    I have a issue, i think. This things start to appear at my "TODO" tab. What does it means?
    He start to make observations in the files of pixi.js and two other plugins Qpathfind.js and Qsight.js.
    Also he mentioned to me to "TODO: Replace this entire file with the ids.xml provided from the Google Play Console.".
    But i export the apk, and it runs ok on my phone, except for the low fps rate, but i think that is because i have many events in the same map of test.
    Check the images:
    [​IMG]
    [​IMG]
    [​IMG]
    [​IMG]

    PS: I actually have an account at google play console.
     
  15. Jodek

    Jodek Warper Member

    Messages:
    2
    Likes Received:
    0
    First Language:
    Polish
    Primarily Uses:
    RMMV
    First of all, I thank you for your hard work, but right after opening AltimitSystems-mv-android-client-329ce94 in my Android Studio, I have a few problems that I don`t know what they mean.
    [​IMG]
     
  16. Eliaquim

    Eliaquim Veteran Veteran

    Messages:
    116
    Likes Received:
    18
    Location:
    Brazil - Rio de Janeiro
    First Language:
    Portuguese - Br
    Primarily Uses:
    RMMV
    Hi there! Same problem happen to me!
    To fix, just make sure your google play library is up to date the change those line with this:

    implementation 'com.google.android.gms:_play-services-games:16.0.0'
    implementation 'com.google.android.gms:_play-services-auth:16.0.1
     
  17. Jodek

    Jodek Warper Member

    Messages:
    2
    Likes Received:
    0
    First Language:
    Polish
    Primarily Uses:
    RMMV
    Hey, thank you for the tip, but I can not find a simple method for update the data. How did you do it?
     
  18. Eliaquim

    Eliaquim Veteran Veteran

    Messages:
    116
    Likes Received:
    18
    Location:
    Brazil - Rio de Janeiro
    First Language:
    Portuguese - Br
    Primarily Uses:
    RMMV
    Normaly the android studio check for updates by himself, and then you update.
    But if this not your case, then you open the Android Studio (If you have one project loaded auto, you just go in the "files" section in top left and "close the project)
    Then you will see this screen:
    [​IMG]
    Go in Configure, and SDK manager. Then you will have this screen:
    [​IMG]
    Check the box in bottom right and go to the tabs marked. I, download everything does to have "Google play" "Google libraries" etc from android 9.0 and 8.1. And some other things in the other tabs.

    Hope this help!
     
  19. TehGuy

    TehGuy Villager Member

    Messages:
    21
    Likes Received:
    7
    First Language:
    English
    ids.xml TODO is only relevant if you're using Google Play Services/Google Play Games stuff; I plonked it in there so it'd show up in the IDE so hopefully people wouldn't miss it

    You can ignore it otherwise.
     
    Eliaquim likes this.
  20. Eliaquim

    Eliaquim Veteran Veteran

    Messages:
    116
    Likes Received:
    18
    Location:
    Brazil - Rio de Janeiro
    First Language:
    Portuguese - Br
    Primarily Uses:
    RMMV
    Thanks! And sorry rsrsrs but i dont understand.
    Yes i'm planning to use it on google play store and if i can in google play games too.
    So what i'm suppose to do?
    When i open the android studio again it will update a new ide?
    I dont understand what you say :/
    TODO is a sort of advice?
    He says to me to check something like "intelligi". But when i click i go to the site of android studio and dont know what to do there.
     

Share This Page