diff --git a/bindings/android-sdk/android_bindings_generator.lpi b/bindings/android-sdk/android_bindings_generator.lpi
index 5f6647187..59aae8dde 100644
--- a/bindings/android-sdk/android_bindings_generator.lpi
+++ b/bindings/android-sdk/android_bindings_generator.lpi
@@ -48,7 +48,7 @@
-
+
@@ -59,9 +59,9 @@
-
-
-
+
+
+
@@ -117,12 +117,11 @@
-
-
-
-
+
+
+
@@ -201,9 +200,9 @@
-
-
-
+
+
+
@@ -230,7 +229,7 @@
-
+
@@ -244,11 +243,12 @@
+
-
-
-
+
+
+
@@ -256,9 +256,9 @@
-
-
-
+
+
+
@@ -270,123 +270,127 @@
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
-
-
-
-
-
+
+
-
-
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
-
+
+
+
+
+
+
diff --git a/bindings/android-sdk/android_sdk_bindings_gen.pas b/bindings/android-sdk/android_sdk_bindings_gen.pas
index f5a7c6b9b..d490ff92a 100644
--- a/bindings/android-sdk/android_sdk_bindings_gen.pas
+++ b/bindings/android-sdk/android_sdk_bindings_gen.pas
@@ -185,6 +185,7 @@ begin
ADest.Add(' float lResult_float;');
ADest.Add(' int lResult_int;');
ADest.Add(' boolean lResult_boolean;');
+ ADest.Add(' CharSequence lResult_CharSequence;');
ADest.Add(' Display lResult_Display;');
ADest.Add('');
ADest.Add(' switch (Buffer)');
@@ -452,6 +453,11 @@ begin
TmpStr := TmpStr + ');';
FPasOutputImpl.Add(' vAndroidPipesComm.WaitForReturn();');
end
+ else if (lMethodReturn = 'CharSequence') or (lMethodReturn = 'String') then
+ begin
+ TmpStr := TmpStr + '): ' + lMethodReturnPas + ';';
+ FPasOutputImpl.Add(' Result := vAndroidPipesComm.WaitForStringReturn();');
+ end
else
begin
TmpStr := TmpStr + '): ' + lMethodReturnPas + ';';
@@ -487,7 +493,7 @@ begin
else
begin
FJavaOutputMethods.Add(' lResult_' + lMethodReturn + ' = ' + lJavaParamSelf + '.' + lMethodName + '(' + lJavaParams + ');');
- if IsBasicJavaType(lMethodReturn) then
+ if IsBasicJavaType(lMethodReturn) or (lMethodReturn = 'CharSequence') or (lMethodReturn = 'String') then
FJavaOutputMethods.Add(' MyAndroidPipesComm.' + GetJavaResultFunction(lMethodReturn) + '(lResult_' + lMethodReturn + ');')
else
begin
@@ -808,8 +814,9 @@ end;
function TAndroidSDKBindingsGen.GetJavaResultFunction(AReturnType: string
): string;
begin
- if AReturnType = 'boolean' then Result := 'SendBoolResult'
- else if AReturnType = 'float' then Result := 'SendFloatResult'
+ if AReturnType = 'boolean' then Result := 'SendBoolResult'
+ else if AReturnType = 'float' then Result := 'SendFloatResult'
+ else if (AReturnType = 'CharSequence') or (AReturnType = 'String') then Result := 'SendStringResult'
else Result := 'SendIntResult';
end;
diff --git a/bindings/android-sdk/mainform.lfm b/bindings/android-sdk/mainform.lfm
index 4f2a96bd9..820e02ac4 100644
--- a/bindings/android-sdk/mainform.lfm
+++ b/bindings/android-sdk/mainform.lfm
@@ -2,19 +2,11 @@ object Form1: TForm1
Left = 479
Height = 414
Top = 137
- Width = 434
+ Width = 433
Caption = 'Android Bindings Generator'
ClientHeight = 414
- ClientWidth = 434
+ ClientWidth = 433
LCLVersion = '0.9.31'
- object Label1: TLabel
- Left = 8
- Height = 18
- Top = 8
- Width = 43
- Caption = 'Label1'
- ParentColor = False
- end
object editInputPath: TDirectoryEdit
Left = 88
Height = 25
diff --git a/bindings/android-sdk/mainform.pas b/bindings/android-sdk/mainform.pas
index b175cb040..e998bc144 100644
--- a/bindings/android-sdk/mainform.pas
+++ b/bindings/android-sdk/mainform.pas
@@ -16,7 +16,6 @@ type
Button1: TButton;
Button2: TButton;
editInputPath: TDirectoryEdit;
- Label1: TLabel;
Label2: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
diff --git a/bindings/android-sdk/sdk_level_7/android_all.txt b/bindings/android-sdk/sdk_level_7/android_all.txt
index c21e7c7c0..f1a27229b 100644
--- a/bindings/android-sdk/sdk_level_7/android_all.txt
+++ b/bindings/android-sdk/sdk_level_7/android_all.txt
@@ -73,6 +73,7 @@ constructor Create(Activity); virtual;
method void setText(CharSequence AText); virtual;
callbacksettercaller setOnClickListener callOnClickListener OnClickListener = procedure (v: TView) of object;
method void setTextSize(int unit_; float size);
+method CharSequence getText()
[EditText] TextView
constructor Create(Activity); override;