πŸƒβ€β™‚οΈ Fast : An Efficient Way to Build Extensions

I believe, in such cases you may safely apply the -dontwarn option, if you wish to do so.

1 Like

hello @JEWEL , i got error while i am using fast build command
error:

 - Error parsing command line: While parsing option --classpath_entry C:\Program: C:\Program is not a valid path: it does not exist.
 - Try --help.
x BUILD FAILED!

edit:
this error just display when desugar_sources: true in fast.xml but when desugar_sources: false there is not errors displayed it is work fine :slight_smile:

Your project may have spaces in the directory path. I believe the desugar tool does not accept spaces in the directory path. I will attempt to provide a solution for this issue later.
In the meantime, please move the FAST to a different location where there are no spaces in the path. Then, configure the FAST_HOME variable and the environment path with the new location.

And please, let me know which version of FAST you're using right now?

2 Likes

Why it Gives error when use this command

curl https://raw.githubusercontent.com/jewelshkjony/fast-cli/main/scripts/update/install.sh -fsSL | sh

But when use the command like this

curl -fsSL https://raw.githubusercontent.com/jewelshkjony/fast-cli/main/scripts/update/install.sh | bash

It Works Fine

There was no error before version 1.1.5

1 Like

:loudspeaker: An update is available, v1.2.0 26.10.24.19.30


  • Blocks will be arranged in order to the source code.
  • Use the -a flag to maintain the alphabetical order of the blocks.

I'll take a look on it later.

3 Likes

Does the Fast supports Java 11
:point_down::point_down:

Yeah, the FAST is fully compatible with JDK11.

3 Likes

:loudspeaker: An update is available v1.2.1 30.10.24.23.43


  • FAST will print warnings if naming conventions are not followed.

Please mention this one point in this topic.

You can install FAST on older versions of Windows automatically, you don't have to download or build it.

For that, you have to install the Windows Management Framework, which includes Windows Powershell 5.1, and that has the support for running the command to install FAST automatically.

This is how I installed FAST on my Windows 7 system.

1 Like

I've no prior experience with Windows 7, and I would greatly appreciate it if you could share a guide on this process.

I am also using Windows 7 Professional and will definitely not upgrade to Windows 10 or 11 for very good reasons. I downloaded v1.2.0 from here Releases Β· jewelshkjony/fast-cli Β· GitHub, unzipped it and copied it to C:\Users\Jo\AppData\Local\Fast\.

grafik

2 Likes

First, install the WMF from this site: https://www.microsoft.com/en-us/download/details.aspx?id=54616

Then restart the system (because it is a system update), and open Powershell

Then run the command to install, as written in the topic πŸƒβ€β™‚οΈ Fast : An Efficient Way to Build Extensions

2 Likes

:mega: An update is available v1.2.2

Date built: 02.11.24.06.29


  • Resolved an issue impacting the R8 dexer and shrinker.
  • Included naming conventions warnings for helper-blocks, arguments of choices, parameters of functions and events.
4 Likes

Hello, how can I add the .jar libraries?

I have been using this version:
γ…€Version: 1.2.0 26.10.24.19.30γ…€

2 Likes

Place the jar files in the project's deps directory and declare them in fast.yml. And run fast sync to include them into classpath for IDE.

Always try to stay updated. The latest version is 1.2.2.

2 Likes

Perfect, thanks, I already updated fast to the latest version.

1 Like

As we know, we can have several classes extending AndroidNonvisibleComponent in an extension, which gives the effect of several extensions in one. But unfortunately we only have one Manifest file. Annotations allowed to add different entries to the manifest from different classes. It would be nice to be able to create more manifest files assigned to different classes. The component_build_infos.json file allows this.

2 Likes

Certainly, the multi-component manifest declaration is already supported by FAST. I will share the detailed process with you shortly.

2 Likes

Here is the example of how could you define the component specific manifest elements:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.jewel.imagegenerator">

  <component name="ImageGenerator">
    <application>
      <meta-data android:name="io.sentry.ndk.scope-sync.enable" android:value="true" />
      <meta-data android:name="io.sentry.auto-init" android:value="false" />
    </application>
  
    <uses-permission android:name="android.permission.INTERNET" />
  </component>

  <component name="DemoAds">
    <application>
      <meta-data android:name="com.startapp.sdk.RETURN_ADS_ENABLED" android:value="false" />
      <activity android:name="com.facebook.ads.AudienceNetworkActivity" 
        android:configChanges="keyboardHidden|orientation|screenSize" 
        android:exported="false" 
        android:theme="@android:style/Theme.Translucent.NoTitleBar" />
      <activity
        android:name="io.bidmachine.nativead.view.VideoPlayerActivity"
       android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" />
      <receiver
        android:name="com.appodeal.ads.AppodealPackageAddedReceiver"
        android:enabled="true"
        android:exported="true" >
        <intent-filter>
          <action android:name="android.intent.action.PACKAGE_ADDED" />
          <data android:scheme="package" />
        </intent-filter>
      </receiver>
    </application>

    <queries>
      <intent>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.BROWSABLE" />
         <data android:scheme="https" />
      </intent>
    </queries>
  
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.BLUETOOTH" />
  </component>
</manifest>
4 Likes

Thanks. It works.

2 Likes