Recent

Author Topic: Android Module Wizard  (Read 523050 times)

Leledumbo

  • Hero Member
  • *****
  • Posts: 8111
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: Android Module Wizard
« Reply #15 on: November 18, 2013, 04:47:49 pm »
Quote
Yes, too. But basically I am using just the Object Inspector to configure the layout, in this sense no coding!
Hmm... does it use relative positioning or absolute or something else?

jmpessoa

  • Hero Member
  • *****
  • Posts: 1469
Re: Android Module Wizard
« Reply #16 on: November 18, 2013, 06:01:47 pm »
@Leledumbo

Quote
Hmm... does it use relative positioning or absolute or something else?

Yes, relative e something else too! :D

In my posted *.lfm, you can see:

Code: [Select]
object jEditText1: jEditText
    Id = 53166
    Anchor = jTextView2
    PosRelativeToAnchor = [raBelow]
    PosRelativeToParent = [rpLeft]
    LayoutParamWidth = lpTwoThirdOfParent
    LayoutParamHeight = lpWrapContent
    MarginLeft = 10
    MarginTop = 10
    MarginRight = 10
    MarginBottom = 10
    ...............................................
  end
  object jButton1: jButton
    Id = 0
    Anchor = jEditText1
    PosRelativeToAnchor = [raToRightOf, raAlignBaseline]
    PosRelativeToParent = []
    LayoutParamWidth = lpOneThirdOfParent
    LayoutParamHeight = lpWrapContent
    ..............................................
  end 

The main concept is "Anchor"  and the possibilities (at the moment...) are:

Code: [Select]
TPositionRelativeToAnchor = ( raAbove,
                                  raBelow,
                                  raToStartOf,
                                  raToEndOf,
                                  raToLeftOf,
                                  raToRightOf,
                                  raAlignBaseline,
                                  raAlignTop,
                                  raAlignBottom,
                                  raAlignStart,
                                  raAlignEnd,
                                  raAlignLeft,
                                  raAlignRight);

  TPositionRelativeToParent = (rpBottom,
                               rpTop,
                               rpLeft,
                               rpRight,
                               rpStart,
                               rpEnd,
                               rpCenterHorizontal,
                               rpCenterInParent,
                               rpCenterVertical
                               {rpTrue});

  TLayoutParams = (lpMatchParent, lpWrapContent, lpHalfOfParent, lpOneQuarterOfParent,
                   lpTwoThirdOfParent ,lpOneThirdOfParent, lpOneEighthOfParent,
                   lpOneFifthOfParent, lpTwoFifthOfParent, lpThreeFifthOfParent, lpFourFifthOfParent,
                   lp16px, lp24px, lp32px, lp40px, lp48px, lp72px, lp96px);


and from *.pas you can see:

Code: [Select]
procedure TAndroidModule6.DataModuleRotate(Sender: TObject; rotate: integer;
  var rstRotate: integer);
begin
  Self.UpdateLayout;   <<<----------------- suporte building in!
end;

Follow the attached a image after device direction change....

Thank you!
« Last Edit: November 18, 2013, 06:08:09 pm by jmpessoa »
Lamw: Lazarus Android Module Wizard
https://github.com/jmpessoa/lazandroidmodulewizard

Leledumbo

  • Hero Member
  • *****
  • Posts: 8111
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: Android Module Wizard
« Reply #17 on: November 19, 2013, 04:48:56 pm »
OK, that looks good. At least no need to worry the controls will be overlapping.

TurboRascal

  • Hero Member
  • *****
  • Posts: 672
  • "Good sysadmin. Bad programmer."™
Re: Android Module Wizard
« Reply #18 on: November 22, 2013, 03:13:15 pm »
This seems great, and I guess a visual design could be added completely bypassing the Form Designer - the way reports are created for example. Clicking on a nonvisual component could open a small designer for placing and drawing controls, even a primitive one would be sufficient help for Android, I guess...
Regards, ArNy the Turbo Rascal
-
"The secret is to give them what they need, not what they want." - Scotty, STTNG:Relics

jmpessoa

  • Hero Member
  • *****
  • Posts: 1469
Re: Android Module Wizard
« Reply #19 on: December 08, 2013, 09:57:45 pm »
Hi All,

I got another step in the layout management, especially the device orietation change challenge.

Yes, the *NEW* jPanel simplifies and actually makes this task very easy and "smart".

Follows code and image just for exemplification....

Achieved that goal I inclose the first part of my work and will try to available the new version of my LazAndroidWizard
with support for  simonsayz's  Controls (including my own extensions..

Now I will focus on writing a more complete readme.txt/tutorial.... I want to complete this task as quickly as possible (03 days?)

Thank to All and special thanks to Simonsayz!


*.dfm

Code: [Select]
object AndroidModule1: TAndroidModule1
  OnCreate = DataModuleCreate
  OldCreateOrder = False
  BackButton = True
  Title = 'jForm'
  BackgroundColor = colbrBlack
  OnRotate = DataModuleRotate
  OnJNIPrompt = DataModuleJNIPrompt
  Height = 424
  HorizontalOffset = 424
  VerticalOffset = 125
  Width = 265
  object jPanel1: jPanel
    Id = 139436
    PosRelativeToAnchor = []
    PosRelativeToParent = []
    LayoutParamWidth = lpMatchParent
    LayoutParamHeight = lpOneThirdOfParent
    MarginLeft = 0
    MarginTop = 0
    MarginRight = 0
    MarginBottom = 0
    Visible = True
    BackgroundColor = colbrLightSteelBlue
    left = 64
    top = 8
  end
  object jPanel2: jPanel
    Id = 0
    Anchor = jPanel1
    PosRelativeToAnchor = [raBelow]
    PosRelativeToParent = []
    LayoutParamWidth = lpMatchParent
    LayoutParamHeight = lpMatchParent
    MarginLeft = 0
    MarginTop = 0
    MarginRight = 0
    MarginBottom = 0
    Visible = True
    BackgroundColor = colbrWhite
    left = 64
    top = 304
  end
  object jTextView1: jTextView
    Id = 3313746
    PosRelativeToAnchor = []
    PosRelativeToParent = [rpCenterHorizontal]
    LayoutParamWidth = lpWrapContent
    LayoutParamHeight = lpWrapContent
    MarginLeft = 10
    MarginTop = 10
    MarginRight = 10
    MarginBottom = 10
    ParentPanel = jPanel1
    Alignment = taLeft
    Visible = True
    Enabled = True
    BackgroundColor = colbrDefault
    FontColor = colbrRed
    FontSize = 0
    Text = 'jPanel Demo'
    left = 136
    top = 8
  end
  object jButton1: jButton
    Id = 2882086
    Anchor = jTextView1
    PosRelativeToAnchor = [raBelow]
    PosRelativeToParent = []
    LayoutParamWidth = lpMatchParent
    LayoutParamHeight = lpWrapContent
    MarginLeft = 5
    MarginTop = 5
    MarginRight = 5
    MarginBottom = 5
    ParentPanel = jPanel1
    Visible = True
    BackgroundColor = colbrDefault
    Text = 'Show Image Light'
    FontColor = colbrDefault
    FontSize = 0
    OnClick = jButton1Click
    left = 136
    top = 72
  end
  object jImageView1: jImageView
    Id = 0
    Anchor = jTextView3
    PosRelativeToAnchor = [raBelow]
    PosRelativeToParent = []
    LayoutParamWidth = lpMatchParent
    LayoutParamHeight = lpMatchParent
    MarginLeft = 0
    MarginTop = 0
    MarginRight = 0
    MarginBottom = 0
    ParentPanel = jPanel2
    ImageIndex = 0
    Images = jImageList1
    Visible = True
    BackgroundColor = colbrDefault
    BackgroundImage = False
    left = 120
    top = 360
  end
  object jImageList1: jImageList
    Images.Strings = (
      'Lazarus_Logo_Light.png'
      'Lazarus_Logo_Dark.png'
    )
    left = 192
    top = 360
  end
  object jButton2: jButton
    Id = 4091625
    Anchor = jButton1
    PosRelativeToAnchor = [raBelow]
    PosRelativeToParent = []
    LayoutParamWidth = lpMatchParent
    LayoutParamHeight = lpWrapContent
    MarginLeft = 5
    MarginTop = 5
    MarginRight = 5
    MarginBottom = 5
    ParentPanel = jPanel1
    Visible = True
    BackgroundColor = colbrDefault
    Text = 'Show Image Dark'
    FontColor = colbrDefault
    FontSize = 0
    OnClick = jButton2Click
    left = 136
    top = 134
  end
  object jTextView2: jTextView
    Id = 0
    PosRelativeToAnchor = []
    PosRelativeToParent = [rpBottom, rpRight]
    LayoutParamWidth = lpWrapContent
    LayoutParamHeight = lpWrapContent
    MarginLeft = 10
    MarginTop = 10
    MarginRight = 10
    MarginBottom = 10
    ParentPanel = jPanel1
    Alignment = taLeft
    Visible = True
    Enabled = True
    BackgroundColor = colbrDefault
    FontColor = colbrMidnightBlue
    FontSize = 0
    Text = 'Panel 1'
    left = 136
    top = 192
  end
  object jTextView3: jTextView
    Id = 9682626
    PosRelativeToAnchor = []
    PosRelativeToParent = [rpTop, rpLeft]
    LayoutParamWidth = lpWrapContent
    LayoutParamHeight = lpWrapContent
    MarginLeft = 10
    MarginTop = 10
    MarginRight = 10
    MarginBottom = 10
    ParentPanel = jPanel2
    Alignment = taLeft
    Visible = True
    Enabled = True
    BackgroundColor = colbrDefault
    FontColor = colbrSlateBlue
    FontSize = 0
    Text = 'Lazarus_Logo'
    left = 120
    top = 304
  end
  object jTextView4: jTextView
    Id = 5428635
    Anchor = jTextView3
    PosRelativeToAnchor = [raAlignBaseline, raAlignRight]
    PosRelativeToParent = [rpRight]
    LayoutParamWidth = lpWrapContent
    LayoutParamHeight = lpWrapContent
    MarginLeft = 10
    MarginTop = 10
    MarginRight = 10
    MarginBottom = 10
    ParentPanel = jPanel2
    Alignment = taLeft
    Visible = True
    Enabled = True
    BackgroundColor = colbrDefault
    FontColor = colbrMidnightBlue
    FontSize = 0
    Text = 'Panel 2'
    left = 192
    top = 304
  end
end


*.pas

Code: [Select]
{Hint: save all files to location: C:\adt32\eclipse\workspace\AppDemo2\jni }
unit unit1;
 
{$mode delphi}
 
interface
 
uses
  Classes, SysUtils, And_jni, And_jni_Bridge, Laz_And_Controls;
 
type

  { TAndroidModule1 }

  TAndroidModule1 = class(jForm)
      jButton1: jButton;
      jButton2: jButton;
      jImageList1: jImageList;
      jImageView1: jImageView;
      jPanel1: jPanel;
      jPanel2: jPanel;
      jTextView1: jTextView;
      jTextView2: jTextView;
      jTextView3: jTextView;
      jTextView4: jTextView;
      procedure DataModuleCreate(Sender: TObject);
      procedure DataModuleJNIPrompt(Sender: TObject);
      procedure DataModuleRotate(Sender: TObject; rotate: integer;
        var rstRotate: integer);
      procedure jButton1Click(Sender: TObject);
      procedure jButton2Click(Sender: TObject);
    private
      {private declarations}
    public
      {public declarations}
  end;
 
var
  AndroidModule1: TAndroidModule1;

implementation
 
{$R *.lfm}
 

{ TAndroidModule1 }

procedure TAndroidModule1.DataModuleCreate(Sender: TObject);
begin
  OnJNIPrompt:= DataModuleJNIPrompt;    {<-- delphi mode...}
  OnRotate:= DataModuleRotate;          {<-- delphi mode...}
end;

procedure TAndroidModule1.DataModuleJNIPrompt(Sender: TObject);
begin
  jTextView3.Text:= jImageView1.ImageName;  //Lazarus_Logo_Light.png
  Self.Show;
end;

procedure TAndroidModule1.jButton1Click(Sender: TObject);
begin
   jImageView1.ImageIndex:= 0;
   jTextView3.Text:= jImageView1.ImageName;  //Lazarus_Logo_Light.png
end;

procedure TAndroidModule1.jButton2Click(Sender: TObject);
begin
    jImageView1.ImageIndex:= 1;
    jTextView3.Text:= jImageView1.ImageName;  //Lazarus_Logo_Dark.png
end;

{rotate=1 --> device is on  vertical/default position; rotate=2 device is on horizontal position}
procedure TAndroidModule1.DataModuleRotate(Sender: TObject; rotate: integer; var rstRotate: integer);
begin
   if rotate = 2 then   //after rotation device is on horizontal
   begin
      jPanel1.LayoutParamHeight:=lpMatchParent;
      jPanel1.LayoutParamWidth:= lpHalfOfParent;
      jPanel2.PosRelativeToAnchor:= [raToRightOf,raAlignBaseline];
    end
    else {1} //after rotation device is on vertical/default
    begin
      jPanel1.LayoutParamHeight:= lpOneThirdOfParent;
      jPanel1.LayoutParamWidth:= lpMatchParent;
      jPanel2.PosRelativeToAnchor:= [raBelow];
    end;
    Self.UpdateLayout;
end;

end.
Lamw: Lazarus Android Module Wizard
https://github.com/jmpessoa/lazandroidmodulewizard

jmpessoa

  • Hero Member
  • *****
  • Posts: 1469
Re: Android Module Wizard
« Reply #20 on: December 14, 2013, 06:20:29 am »
Hi All,

The Android Module Wizard version 0.2

that Introduces Android GUI Components - Based on Simonsayz's controls

is on https://github.com/jmpessoa/lazandroidmodulewizard

The Demos [Eclipse Projects] are here:

    AppDemo1 - ref1. https://www.opendrive.com/files?Ml8zNjMwNTE0N18xVUZ2ag
   
             - A complete remake of Simonsayz's Demo     


    AppDemo2 - ref2. https://www.opendrive.com/files?Ml8zNjMwNTMxN19YTHgxWg
             - Introduce jPanel e jCamara

    :: Please, look for Lazarus project on \jni folder...
   
Yes, Lazarus does RAD for Android!

Yes, the work is just beginning!

Any assistance is very welcome!

Thank to All and special thanks to Simonsayz!

Here is the  complete "readme.txt"
Quote

Lazarus Android Module Wizard
            

"A wizard for create JNI Android loadable module (.so) in Lazarus/Free Pascal using DataModules"


      Author: Jose Marques Pessoa : jmpessoa__hotmail_com

       https://github.com/jmpessoa/lazandroidmodulewizard

            http://forum.lazarus.freepascal.org/index.php/topic,21919.0.html

          Acknowledgements: Eny and Phil for the Project wizard hints...

                 http://forum.lazarus.freepascal.org/index.php/topic,20763.msg120823.html#msg120823

              Felipe for the Android support...

              TrueTom for the Laz4Android Package (laz4android1.1-41139)
                     
      https://skydrive.live.com/?cid=89ae6b50650182c6&id=89AE6B50650182C6%21149
             
             Simonsayz for the great work on Android [GUI] Controls

                http://forum.lazarus.freepascal.org/index.php/topic,22079.0.html

             Lazarus forum community!


version 0.2 - December 2013 -

   :: NEW! Introduces Android GUI Components - Based on Simonsayz's controls [item IV]
   

   :: revision 0.1 - 09 September - 2013 - Bugs fixs!


version 0.1 - August 2013 -


   [1] Warning: at the moment this code is just a *proof-of-concept*
     

I. INSTALL Laz4Android (https://skydrive.live.com/?cid=89ae6b50650182c6&id=89AE6B50650182C6%21149)

      warning: the original laz4android1.1-41139 is win32 and just for Android NDK-7c

   1. From lazarus IDE - Install Wizard Packages

      1.1 Package -> Open Package -> "tfpandroidbridge_pack.lpk"

     Ref. image: https://www.opendrive.com/files?Ml8zNjMwNDQ3NF83SzhsZg

      1.1.1 From Package Wizard

            - Compile
            - Use -> Install
 
      1.2 Package -> Open Package -> "lazandroidwizardpack.lpk"
   
      1.2.1 From Package Wizard

            - Compile
            - Use -> Install


II. GENERIC USE

1. From Eclipse IDE - Create Android Project

  1.1. File -> New -> Android Application Project ...[Next], [Next]...[Finish]!

  1.2. From Package Explore -> src
   
       :Right click your recent created package -> new -> class 
   
       :Enter new class name... (ex. JNIHello)
   
       :Edit class code for wrapper native methods
   
        ex:

   public class JNIHello {

      public native String getString(int flag);
      public native int getSum(int x, int y);

           static {
      try {
               System.loadLibrary("jnihello");  //*              
      } catch(UnsatisfiedLinkError ule) {
          ule.printStackTrace();
      }
           }

        } 

   
  1.3. * warning: System.loadLibrary("...") must match class Name "lowercase"...
       ex. JNIHello -> "jnihello"
       
   
2. From lazarus IDE (laz4android1.1-41139)

   2.1. On "Create a new project" Dialog select: <JNI Android Module>

        ref. Image: https://www.opendrive.com/files?Ml8zNjMwMTY4MF9HMVRHRg

   2.2. From "Android Module Wizard: Configure Paths"

   Ref. Image: https://www.opendrive.com/files?Ml8zNjMwMTk0Nl9hNEtBUw

     -Path to Eclipse Workspace

         ex. C:\adt32\eclipse\workspace
           
     -Path to Ndk Plataforms

         ex. C:\adt32\ndk7\platforms\android-8\arch-arm\usr\lib
 
     -Path to Ndk Toolchain 
       
   ex. C:\adt32\ndk7\toolchains\arm-linux-androideabi-4.4.3\prebuilt\windows\lib\gcc\arm-linux-androideabi\4.4.3
     
     -Path to  Simonsayz's  code  templates (App.java + Controls.java):   //**
     
   ex. C:\laz4android\components\LazAndroidWizard\java
 
     -Select [Eclipse] Project Name:                                     //**
 
   ex. C:\adt32\eclipse\workspace\AppDemo 


      ** needed only for Android Components Bridges...       

   2.3. OK


   2.4. From "Android Module Wizard: Select Java Source for JNI..."

      -Select the Java wrapper class for native methods....
 
        ex. "JNIHello.java"

   2.5. OK 

      - Pascal JNI Interface was created!    

   2.6. follow the code hint: "save all files to location....." {save all in \jni folder ...}

     
   2.7. Implement the Pascal JNI Interface methods.....

   2.8. From Lazarus_FOR_ANDROID IDE

     Run -> Build         {.so was created! see \libs folders....}

   2.9. Yes! You got it!


III. BUILD and RUN ANDROID APPLICATION

   1.  From Eclipse IDE

        1.1.  double click your recent created project //that is: open project...

   1.1.  right click your recent created project -> Refresh
   
   1.2.  right click your recent created project -> Run as -> Android Application


IV. SPECIAL GUIDE FOR ANDROID BRIDGES COMPONENTS USE   - NEW

   1. From Eclipse IDE:

        1.1. File -> New -> Android Application Project
       
   1.2. [Next]
   1.3. [Next]
   1.4. [Next]
   
   1.5. On "Create Activity" Dialog select: <Blank Activity>   [Next]
             
             ref. Image: https://www.opendrive.com/files?Ml8zNjMwMDUwOF9pZm4xMQ

        1.6. On "Activity Name" Dialog enter: App  [Finish] //"App" name is mandatory!
                 
             ref. Image: https://www.opendrive.com/files?Ml8zNjMwMDE0M19aZ2dkeA
       
          1.7  Right click your recent created project -> Close 

   2. From Lazarus IDE
   
   2.1. Project -> New Project
       
   2.2. On "Create a new project" Dialog select: <JNI Android Module>

        ref. Image: https://www.opendrive.com/files?Ml8zNjMwMTY4MF9HMVRHRg

   2.3. From "Android Module Wizard: Configure Paths"

      -Path to Eclipse Workspace

          ex. C:\adt32\eclipse\workspace
           
           -Path to Ndk Plataforms

                ex. C:\adt32\ndk7\platforms\android-8\arch-arm\usr\lib
 
           -Path to Ndk Toolchain 

               ex. C:\adt32\ndk7\toolchains\arm-linux-androideabi-4.4.3\prebuilt\windows\lib\gcc\arm-linux-androideabi\4.4.3
     
           -Path to  Simonsayz's  code  templates (App.java + Controls.java): 

               ex. C:\laz4android\components\LazAndroidWizard\java
 
           -Select [Eclipse] Project Name:                                   

               ex. C:\adt32\eclipse\workspace\AppDemo1 

          ref. Image: https://www.opendrive.com/files?Ml8zNjMwMTk0Nl9hNEtBUw

         2.4. From "Android Module Wizard: Select Java Source for JNI..."

      -From left panel/tree Select src-> ...-> "your recent created project"

                -From top panel/View right click "App.java" file

      -On Popup menu select/click <Get Simonsayz's Templates>
           
          ref. Image: https://www.opendrive.com/files?Ml8zNjMwMjI1Ml9kOXNRag

                -Double Click "Control.java" file...
 
          ref. Image: https://www.opendrive.com/files?Ml8zNjMwMjkyM183ZVd2MA

   2.5. OK 

         - Pascal JNI Interface was created!    

   2.6. follow the code hint: "save all files to location....."  { \jni folder }


   2.7. From Component Palete select page <Android Bridges>

         ref. Image: https://www.opendrive.com/files?Ml8zNjMwNDQ3NF83SzhsZg
                           
      -Put e configure some component on DataModule form... etc...

   2.8. From Lazarus IDE

      -Run -> Build
    

        2.9.  From Eclipse IDE

          -Double click recent created project     {Open project ...}

          -Right click your recent created project -> Refresh
             
      -Right click your recent created project -> Run as -> Android Application
       
   
V. Yes! Lazarus/Free Pascal does RAD on Android!


VI. Download Demos [Eclipse Projects]

    AppDemo1 - ref1. https://www.opendrive.com/files?Ml8zNjMwNTE0N18xVUZ2ag
    AppDemo2 - ref2. https://www.opendrive.com/files?Ml8zNjMwNTMxN19YTHgxWg

VII. Ref. Lazarus forum: http://forum.lazarus.freepascal.org/index.php/topic,21919.0.html

     -Help and Hints
     -Bugs
     -Sugestions
     -Colaborations   
     -Critics
     -Roadmap
     -etc..

VIII. The work is just beginning!




Lamw: Lazarus Android Module Wizard
https://github.com/jmpessoa/lazandroidmodulewizard

Leledumbo

  • Hero Member
  • *****
  • Posts: 8111
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: Android Module Wizard
« Reply #21 on: December 14, 2013, 07:45:25 am »
Thank you, jmpessoa. I'm on my way to the github page :D
You should put the demo in the github as well IMO, better in its own folder and let everybody adds their own

Hmm... it seems that Eclipse (workspace) is required to create any project with this. I think it could be removed and we could provide standard Android project structure that only requires ant to build, as simonsayz libraries do.
« Last Edit: December 14, 2013, 08:02:58 am by Leledumbo »

jmpessoa

  • Hero Member
  • *****
  • Posts: 1469
Re: Android Module Wizard
« Reply #22 on: December 14, 2013, 04:17:36 pm »

@Leledumbo,

Yes, the Eclipse dependency needs to be removed!

I will try learn about  this part of the problem, I will study @simonsayz solution and @delphifreak solution....

Yes, I put the AppDemos on github now...

Thank you very much for your interest!


Lamw: Lazarus Android Module Wizard
https://github.com/jmpessoa/lazandroidmodulewizard

Sergionn

  • New member
  • *
  • Posts: 8
Re: Android Module Wizard
« Reply #23 on: December 14, 2013, 04:59:39 pm »
Also thank you, Jmpessoa for your work!!!!!!!!!
Eclipse dependency not the right way, it should be done like in Simon's work.
By the way - maybe someones knows - what happends with Simon, why he does't continue his work?

Leledumbo

  • Hero Member
  • *****
  • Posts: 8111
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: Android Module Wizard
« Reply #24 on: December 14, 2013, 05:15:20 pm »
Hmm... I got linker errors due to either .lpk requiring NDK libraries to link with the IDE but it's not stated anywhere in the readme.

jmpessoa

  • Hero Member
  • *****
  • Posts: 1469
Re: Android Module Wizard
« Reply #25 on: December 14, 2013, 05:45:01 pm »

@Leledumbo:

I put this on readme.txt:

Code: [Select]
  warning: the original laz4android1.1-41139 is win32 and just for Android NDK-7c

but I do not know if I understood your question ...

@Sergionn:

Yes, Simon help is very important, I tried some communication with him but had no success...

Thank you.
   
Lamw: Lazarus Android Module Wizard
https://github.com/jmpessoa/lazandroidmodulewizard

Leledumbo

  • Hero Member
  • *****
  • Posts: 8111
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: Android Module Wizard
« Reply #26 on: December 14, 2013, 06:22:10 pm »
Quote
I put this on readme.txt:

Code: [Select]
  warning: the original laz4android1.1-41139 is win32 and just for Android NDK-7c

but I do not know if I understood your question ...
Upon installing, I got these:
Quote
/usr/bin/ld: cannot find -lGLESv2
/usr/bin/ld: cannot find -lGLESv1_CM
/usr/bin/ld: cannot find -ljnigraphics
/usr/bin/ld: cannot find -llog
I do know they're part of NDK, it's easy to find them. But any of the .lpk doesn't contain path to these libs (-Fl) and the readme contains no instruction for this.

jmpessoa

  • Hero Member
  • *****
  • Posts: 1469
Re: Android Module Wizard
« Reply #27 on: December 14, 2013, 06:43:44 pm »
@Leledumbo,

1. You is using Windows or Linux?

2. Please check my "Android Module Wizard: Configure Paths"

    ref Image:     https://www.opendrive.com/files?Ml8zNjMwMTk0Nl9hNEtBUw

3. Yes, they're part of NDK,  the interfaces are:

    Laz_And_GLESv1_Canvas_h.pas
    Laz_And_GLESv2_Canvas_h.pas
    And_bitmap_h.pas
    And_log_h.pas

I'm trying to understand your question.

Thank you.
Lamw: Lazarus Android Module Wizard
https://github.com/jmpessoa/lazandroidmodulewizard

Leledumbo

  • Hero Member
  • *****
  • Posts: 8111
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: Android Module Wizard
« Reply #28 on: December 14, 2013, 06:54:02 pm »
Quote
You is using Windows or Linux?
Linux
Quote
Please check my "Android Module Wizard: Configure Paths"
I haven't gone that far, the problem appears when installing the .lpk to the IDE

jmpessoa

  • Hero Member
  • *****
  • Posts: 1469
Re: Android Module Wizard
« Reply #29 on: December 14, 2013, 07:31:26 pm »
@Leledumbo,

Linux?

I haven't gone that far too...  :D :(  :-[

1. At the moment "lazandroidwizardpack.lpk" has a simple Windows dependency

the '/'  separator! I will fix this! (Edit: Directory Separator was Fix! )

2. The  "tfpandroidbridge_pack.lpk" I don't remember, I will see. (Edit: No problem found!)

What *.lpk  is you trying?

Thanks.

       

« Last Edit: December 14, 2013, 09:54:08 pm by jmpessoa »
Lamw: Lazarus Android Module Wizard
https://github.com/jmpessoa/lazandroidmodulewizard