I use the following code and it works on my Samsung Galaxy Note III.
Ses := TJAudioRecord.JavaClass.init(TJMediaRecorder_AudioSource.JavaClass.MIC, 11025, TJAudioFormat.JavaClass.CHANNEL_IN_MONO, TJAudioFormat.JavaClass.ENCODING_PCM_16BIT, 44100 * 2);
(Ses As JAudioRecord).startRecording;
Okunan := 0;
M := TMemoryStream.Create;
for I := 1 to 2 do
Begin
Tampon := TJavaArray<SmallInt>.Create(44100);
Okunan := Okunan + (Ses As JAudioRecord).read(Tampon, 0, 44100);
M.Write(Tampon.Data^, Tampon.Length * 2);
Tampon.Free;
End;
(Ses As JAudioRecord).stop;
Ses.release;
M.SaveToFile(TPath.GetRingtonesPath+'/ses.raw');