Other B4i v5.80 BETA has been released

Discussion in 'iOS Questions' started by Erel, Jun 5, 2019.

  1. Erel

    Erel Administrator Staff Member Licensed User

    As always I'm happy to release a new version :)

    This update includes many IDE improvements as well as other improvements:

    • Bookmarks and breakpoints are listed in the modules tree:

      [​IMG]
    • Auto bookmarks feature:

      [​IMG]
      • Recent code positions and designer layouts appear as tabs in the window title.
      • The IDE decides on the list of tabs based on several factors (recency, modifications and others).
      • The list is saved together with the project and restored when the project is loaded.
      • The window can be dragged directly from the tabs.
    • Auto backup improvements:
      • Project is saved before backup, based on the auto save option.
      • Project name added to the backup file.
      • The project folder is configurable (AutoBackupFolder in the ini file).
    • Warning for unused parameters in private, non-event, subs.
    • Additional library folder can be configured with a B4X folder for cross platform libraries: https://www.b4x.com/android/forum/threads/b4x-additional-libraries-folder.103165/
    • #Event declarations appear in the autocomplete list.
    • Ctrl + Click on layout files from the code:

      [​IMG]

    • Fix for a long standing issue that caused scope changes of global variables to not always be detected.
    • Compilation performance improvements.
    • TextView / TextField SpellChecking property.
    • Default launch images for iPhone XS Max and iPhone XR were added.
    • #CertificateFile attribute supports absolute paths.
    • Debugger improvements.
    • Simulator builds with the hosted builder (Tools - Build Server - Build Simulator Release App).
      The simulator requires a Mac computer. With this improvement, developers using the hosted builder can make a simulator build, download it and then run it on an online service such as https://appetize.io/ or on any accessible Mac.
    • Bug fixes and other minor improvements.
    Developers who are eligible for a free upgrade will receive an email with installation instructions.

    Note that it is a BETA version.
     
    Last edited: Jun 5, 2019
  2. DonManfred

    DonManfred Expert Licensed User

    Typo? Or what is a LayoutLayout file?
     
    BillMeyer and Erel like this.
  3. Alexander Stolte

    Alexander Stolte Well-Known Member Licensed User

    means that I theoretically do not need dev. license to test if i use https://appetize.io/?
     
  4. Erel

    Erel Administrator Staff Member Licensed User

    I don't think that it is very practical. It will be difficult to develop like this.

    The two use cases that I see here are:

    1. Getting screenshots from different devices.
    2. Testing specific features or iOS versions.
     
    BillMeyer and Alexander Stolte like this.
  5. Alberto Iglesias

    Alberto Iglesias Well-Known Member Licensed User

    • #CertificateFile attribute supports absolute paths. <=== I Like that!!!!!!!!!!!
     
  6. Mashiane

    Mashiane Expert Licensed User

    I havent doing b4i for a long while hey, will sure to check this out this afternoon! Thanks.
     
  7. emexes

    emexes Well-Known Member Licensed User

    I tried doing this a few weeks ago (this post), but:

    i. the screenshot resolutions do not match the device specifications
    ii. the screenshots are returned as (lossy) JPEGs with visible compression artifacts, rather than (lossless) PNGs
    iii. there is no 12.9" iPad device (a required size for screenshots of iPad apps)

    I emailed Appetize.io and their reply was:
    so there is at least some hope that these issues are temporary, which'd be great, because editing up screenshots is not as much a thrill as it used to be.

    :)
     
  8. Erel

    Erel Administrator Staff Member Licensed User

    Appetize is not the only service available. Once you have the IPA file (the internal app folder is the important piece) then you can send it to someone who has an access to a Mac. You no longer need to have the builder running on your own Mac for this.
     
  9. emexes

    emexes Well-Known Member Licensed User

    Agreed, but... it was the best and simplest of the services I tried, and it was soooooo close to being perfect for generating screenshots, it near broke my heart to discover those problems.

    But I couldn't produce a simulator build anyway. Now I can (when I've got this current app released safely, so's I can update B4i). Once I've got a built app running on their emulator, I'll query them again.
     
  10. janderkan

    janderkan Active Member Licensed User

    Code:
    B4i Version: 5.80 BETA 1
    Parsing code.    (
    0.04s)
    Building folders structure.    (
    0.15s)
    Compiling code.    (
    0.42s)
    Compiling layouts code.    (
    0.04s)
    Compiling debugger engine code.    (
    2.48s)
    Building Xcode project    (
    0.84s)
    Sending data 
    to remote compiler.    Error
    Out: Build 
    settings from command line:
        ARCHS = arm64
        CODE_SIGN_IDENTITY = iPhone Distribution: 1Click ivs (RW5JH37F9J)
        CONFIGURATION_BUILD_DIR = /Users/administrator/Documents/UploadedProjects/<user 
    id>/Payload
        OTHER_CODE_SIGN_FLAGS = --keychain <user 
    id>
        PRODUCT_NAME = Futedo Setup
        PROVISIONING_PROFILE = 5a0fa5f7-7d88-4a5f-a7c1-e87b18d1e20d

    note: Using new build system
    note: Planning build
    note: Constructing build description
    CreateBuildDirectory /Users/administrator/Documents/UploadedProjects/<user 
    id>/build (in target: B4iProject)
        cd /Users/administrator/Documents/UploadedProjects/<user 
    id>
        builtin-create-build-directory /Users/administrator/Documents/UploadedProjects/<user 
    id>/build

    MkDir /Users/administrator/Documents/UploadedProjects/<user 
    id>/Payload/Futedo\ Setup.app (in target: B4iProject)
        cd /Users/administrator/Documents/UploadedProjects/<user 
    id>
        /bin/mkdir -p /Users/administrator/Documents/UploadedProjects/<user 
    id>/Payload/Futedo\ Setup.app

    ProcessProductPackaging /Users/administrator/Library/MobileDevice/Provisioning\ Profiles/5a0fa5f7-7d88-4a5f-a7c1-e87b18d1e20d.mobileprovision /Users/administrator/Documents/UploadedProjects/<user 
    id>/Payload/Futedo\ Setup.app/embedded.mobileprovision (in target: B4iProject)
        cd /Users/administrator/Documents/UploadedProjects/<user 
    id>
        builtin-productPackagingUtility /Users/administrator/Library/MobileDevice/Provisioning\ Profiles/5a0fa5f7-7d88-4a5f-a7c1-e87b18d1e20d.mobileprovision -o /Users/administrator/Documents/UploadedProjects/<user 
    id>/Payload/Futedo\ Setup.app/embedded.mobileprovision

    WriteAuxiliaryFile /Users/administrator/Documents/UploadedProjects/<user 
    id>/build/B4iProject.build/Release-iphoneos/B4iProject.build/DerivedSources/Entitlements.plist (in target: B4iProject)
        cd /Users/administrator/Documents/UploadedProjects/<user 
    id>
        write-
    file /Users/administrator/Documents/UploadedProjects/<user id>/build/B4iProject.build/Release-iphoneos/B4iProject.build/DerivedSources/Entitlements.plist

    ProcessProductPackaging 
    "" /Users/administrator/Documents/UploadedProjects/<user id>/build/B4iProject.build/Release-iphoneos/B4iProject.build/Futedo\ Setup.app.xcent (in target: B4iProject)
        cd /Users/administrator/Documents/UploadedProjects/<user 
    id>
        

    Entitlements:

    {
        
    "application-identifier" = "RW5JH37F9J.com.futedo.setup";
        
    "com.apple.developer.networking.wifi-info" = 1;
        
    "com.apple.developer.team-identifier" = RW5JH37F9J;
        
    "get-task-allow" = 0;
    }


        builtin-productPackagingUtility -entitlements -format xml -o /Users/administrator/Documents/UploadedProjects/<user id>/build/B4iProject.build/Release-iphoneos/B4iProject.build/Futedo\ Setup.app.xcent

    /Users/administrator/Documents/UploadedProjects/<user id>/B4iProject/b4i_mainpage.h:10:9: warning: non-portable path to file '"iJSON.h"'; specified path differs in case from file name on disk [-Wnonportable-include-path]
    #import "ijson.h"
            ^~~~~~~~~
            "iJSON.h"
    /Users/administrator/Documents/UploadedProjects/<user id>/B4iProject/b4i_mainpage.h
    :
    11
    :
    9:
    warning
    : non-portable path to file '"iPhone.h"'; specified path differs in case from file name on disk [-Wnonportable-include-path]

    CompileAssetCatalog /Users/administrator/Documents/UploadedProjects/<user id>/Payload/Futedo\ Setup.app /Users/administrator/Documents/UploadedProjects/<user id>/Images.xcassets (in target: B4iProject)
        cd /Users/administrator/Documents/UploadedProjects/<user id>
        /Applications/Xcode.app/Contents/Developer/usr/bin/actool --output-format human-readable-text --notices --warnings --export-dependency-info /Users/administrator/Documents/UploadedProjects/<user id>/build/B4iProject.build/Release-iphoneos/B4iProject.build/assetcatalog_dependencies --output-partial-info-plist /Users/administrator/Documents/UploadedProjects/<user id>/build/B4iProject.build/Release-iphoneos/B4iProject.build/assetcatalog_generated_info.plist --app-icon AppIcon --launch-image LaunchImage --enable-on-demand-resources YES --sticker-pack-identifier-prefix .sticker-pack. --target-device iphone --target-device ipad --minimum-deployment-target 8.0 --platform iphoneos --product-type com.apple.product-type.application --compile /Users/administrator/Documents/UploadedProjects/<user id>/Payload/Futedo\ Setup.app /Users/administrator/Documents/UploadedProjects/<user id>/Images.xcassets


    Error: ** BUILD FAILED **


    The following build commands failed:
        CpResource /Users/administrator/Documents/UploadedProjects/<user id>/Settings.bundle /Users/administrator/Documents/UploadedProjects/<user id>/Payload/Futedo\ Setup.app/Settings.bundle
    (1 failure)
    I cannot figure out where to look for the error.
     
  11. Erel

    Erel Administrator Staff Member Licensed User

    Are you using a local builder? Have you upgraded the builder to v5.80?
     
  12. janderkan

    janderkan Active Member Licensed User

    No , It is the hosted builder.
     
  13. Erel

    Erel Administrator Staff Member Licensed User

    Does it happen with all your apps?
     
  14. janderkan

    janderkan Active Member Licensed User

    No, only one app.
    I will send it to you :)
     
  15. Erel

    Erel Administrator Staff Member Licensed User

    The error is related to your settings bundle. Check it.
     
  16. Erel

    Erel Administrator Staff Member Licensed User

    Did it work with previous version of B4i?
     
  17. janderkan

    janderkan Active Member Licensed User

    I always test a beta release on a backup, and the files for settings.bundle was missing.
    Thank you, now it works fine :)
     
    Erel likes this.
  18. ajk

    ajk Active Member Licensed User

    In the full version, I would ask for
    1) option to disable the history buttons at the top of the screen (or display them as a separate window with history)
    2) option to display the search field where it was - in the search window (I work on 2 monitors - code on the right monitor, windows, emulators, etc. on the left) - new way of locating the search field on the main window does not match my needs
     
    techknight likes this.
  19. CaptKronos

    CaptKronos Active Member Licensed User

    Using the beta I am having a problem with declaring a DocumentPickerViewController. Adding the following one line to the default project (and adding the iUI8 library)
    Code:
    Dim DocumentPicker As DocumentPickerViewController
    gives the compilation error:

    Code:
    /Users/bob/Desktop/B4iBuildServer/UploadedProjects/<user id>/B4iProject/b4i_main.m:36:1: error: unknown type name 'B4IDocumentPickerViewController'; did you mean 'UIDocumentPickerViewController'?
    B4IDocumentPickerViewController* _documentpicker = nil;
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    UIDocumentPickerViewController
    In module 'UIKit' imported from ../../Libs/iCore.h:7:
    /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDocumentPickerViewController.h:
    35:58: note: 'UIDocumentPickerViewController' declared here
    NS_CLASS_AVAILABLE_IOS(8_0) __TVOS_PROHIBITED @interface UIDocumentPickerViewController : UIViewController
                                                             ^
    /Users/bob/Desktop/B4iBuildServer/UploadedProjects/<user 
    id>/B4iProject/b4i_main.m:56:20: error: unknown receiver 'B4IDocumentPickerViewController'; did you mean 'UIDocumentPickerViewController'?
    _documentpicker = [B4IDocumentPickerViewController new];
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                       UIDocumentPickerViewController
    In module 'UIKit
    ' imported from ../../Libs/iCore.h:7:
    /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDocumentPickerViewController.h:35:58: note: 'UIDocumentPickerViewController' declared here

    NS_CLASS_AVAILABLE_IOS(8_
    0) __TVOS_PROHIBITED @interface UIDocumentPickerViewController : UIViewController

                                                             ^
    2 errors generated.
    I'm using a local builder and I have upgraded that to 5.80 beta.
     
  20. Erel

    Erel Administrator Staff Member Licensed User

    Compiles fine here. Have you added #MinVersion: 8 ?

    It can be disabled by editing the INI file.

    Such an option might be added in the future.
     
Loading...
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice