Visionaire 4.2 and ios

  • #1, by patolandFriday, 08. May 2015, 09:13 5 years ago
    Hello! Congratulations for the 4.2 update. Since version 4 i'm stuck with the ios export of my game. I would like to know if now -with the 4.2 version- it's possible to get an ipa version of the game working on ios 8.3 on iphone 6+, iphone 5s and ipad mini (NON jailbraked)
    After severals tries i only got an ipa file that can be only installed in an ipad 3 or later but not running after deploy.
    Thank you so much!

    Newbie

    23 Posts


  • #2, by BigStansTuesday, 12. May 2015, 01:09 5 years ago
    Hi.
    Simply yes, we're now armv7 and arm64 compatible.
    This means 32 bit for iPad 3 or something (iOS 6.1 to 8.x).
    And for newer iPads arm64 starting from iOS 6.1.

    But you need to have an apple developer account and you must re-sign the ipa (Codesign V2 from Apple).
    Before re-sign your ipa, you must edit the plist too. And you can "enable" the iPhone in the plist.
    It gives much tools for this. And i have created an python script for this.

    Hm… I can make it public on github if you want.

    Great Poster

    361 Posts

  • #3, by fulviovTuesday, 12. May 2015, 10:13 5 years ago
    Thumbs up for the script on github smile That would help!

    Forum Fan

    119 Posts

  • #4, by patolandTuesday, 12. May 2015, 10:24 5 years ago
    Hello Fulviov and thank you soooo much! i'm really lost here, specially to port to my iphone 6 +. I did a build game for ios and when i try to deploy them via itunes to my phone all i have is an app that shows the VS logo but don't run.
    I'm sure your phyton script will help me out, but if you have the time to guide me in the process i'll really appreciate.
    Thanks in advance, and for your help!

    Newbie

    23 Posts

  • #5, by BigStansTuesday, 12. May 2015, 18:50 5 years ago
    https://github.com/Currywurst/vsresign
    It's not fully done, but it resign the ipa.

    clone it from github, download the mobile provisioning profile, drag it in the same directory configure the result with the config.ini
    You can change all info.plist settings.
    So, if you want to add or change a plist setting write: info_plist_ and then the Idendifier
    for example:
    info_plist_CFBundleDisplayName = Yourgame
    Changes the CFBundleDisplayName to yourgame or add it, if it's not available.

    use --list or type the command security find-identity -p codesign and add it into the config.ini

    I need more time to describe it, but i am sure it's easy smile

    Great Poster

    361 Posts

  • #6, by fulviovTuesday, 12. May 2015, 21:42 5 years ago
    Cool! I am going to try it out now.
    One question - you mentioned the possibility to enable iPhones from the plist, how do I do that?

    Forum Fan

    119 Posts

  • #7, by BigStansWednesday, 13. May 2015, 09:15 5 years ago
    UIDeviceFamily has 1 Item with the value 2 (this is the iPad)
    To make it runnable for the iPhone
    UIDeviceFamily must be have 2 values 1 & 2
    so overwrite it with the config.ini line:

    info_plist_UIDeviceFamily = ['1', '2']
    This creates an array with the values 1 & 2 (iphone and iPad)

    But you need to add icons… This is what i said, i need a little bit more time for these scripting things smile

    Great Poster

    361 Posts

  • #8, by fulviovWednesday, 13. May 2015, 11:09 5 years ago
    I have been trying to get this to work, but unfortunately the created .ipa still retains the old plist settings, and does not run on my iOS device.
    this is the config I am using:

    [MyGame]
    certificate = [my certificate hash]
    ios_embedded.mobileprovision = iOSTeam_Provisioning_Profile_.mobileprovision
    generate_macappstore_pkg = True
    entitlement_overwrite = True
    entitlement_app-sandbox = True
    info_plist_overwrite = True
    info_plist_icon =
    info_plist_CFBundleDisplayName = mygame
    info_plist_CFBundleExecutable = mygame
    info_plist_CFBundleIdentifier = mygame.hexensoftware.com
    info_plist_CFBundleLocalizations = ['en', 'de']
    info_plist_CFBundleGetInfoString = My cool game 3.1.6.369 Copyright © {YEAR} Fast Food Limited. All rights reserved.
    info_plist_NSHumanReadableCopyright = Copyright © {YEAR} Fast Food Limited. All rights reserved.
    info_plist_LSApplicationCategoryType = public.app-category.adventure-games
    info_plist_CFBundleVersion = 1.0
    info_plist_CFBundleShortVersionString = 1.0.1
    info_plist_UIDeviceFamily = ['1', '2']
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19


    I moved the iOSTeam_Provisioning_Profile_.mobileprovision in the same directory with the script, and running it passing the config.ini as first argument and the .ipa name as second argument.

    This is the output:

    ~ List: False
    ~ Target : mygame_iOS.ipa
    ~ Target Platform : iOS
    ~ Target Config: config.ini
    ~ Cleanup tmp directory
    ~~ Section: mygame
    ~~~ Generate plist: mygame
    ~~~~ set: CFBundleDisplayName -> mygame
    ~~~~ set: CFBundleExecutable -> mygame
    ~~~~ set: CFBundleIdentifier -> mygame.hexensoftware.com
    ~~~~ set: CFBundleLocalizations -> ['en', 'de']
    ~~~~ set: CFBundleGetInfoString -> My cool game 3.1.6.369 Copyright © 2015 Fast Food Limited. All rights reserved.
    ~~~~ set: NSHumanReadableCopyright -> Copyright © 2015 Fast Food Limited. All rights reserved.
    ~~~~ set: LSApplicationCategoryType -> public.app-category.adventure-games
    ~~~~ set: CFBundleVersion -> 1.0
    ~~~~ set: CFBundleShortVersionString -> 1.0.1
    ~~~~ set: UIDeviceFamily -> ['1', '2']
    ~~~ Generate entitlements: mygame
    ~~~~ set: app-sandbox -> True
    tmp/Payload/Visionaire Player.app: replacing existing signature
    tmp/Payload/Visionaire Player.app: signed bundle with Mach-O universal (armv7 arm64) [net.visionaire-studio.Visionaire-Player]
    ~ compress target
    ~ compress done
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24

    Forum Fan

    119 Posts

  • #9, by BigStansWednesday, 13. May 2015, 13:20 5 years ago
    Hm. I am not @ my laptop currently, but try:
    entitlement_app-sandbox = False
    generate_macappstore_pkg = False
    CFBundleIdentifier is wrong. This is your appID given in the Mac/AppStore developer Account

    Great Poster

    361 Posts

  • #10, by fulviovWednesday, 13. May 2015, 20:54 5 years ago
    Hm just tried this, same thing.
    The plist file remains unchanged. Odd confuse

    Forum Fan

    119 Posts

Write post