2017-04-18 16 views
0

私は、次のコードを持っている上でサウンドを再生する方法:AndroidのFireMonkeyの

uses 
    MMSystem; 

procedure TForm3.AddSound; 
var 
    hFind, hRes: THandle; 
    Song: PChar; 
begin 
    hFind := FindResource(HInstance, 'Resource_1', RT_RCDATA); 
    if hFind <> 0 then begin 
    hRes:=LoadResource(HInstance, hFind); 
    if hRes <> 0 then begin 
     Song:=LockResource(hRes); 
     if Assigned(Song) then SndPlaySound(Song, snd_ASync or snd_Memory); 
     UnlockResource(hRes); 
    end; 
    FreeResource(hFind); 
    end; 
end; 

ボタンのOnClickイベントで、このプロシージャを呼び出すが、同じコードは、Androidのために働いていないときにそれがWindowsで正常に動作します。私は次のエラーを取得する:

[DCC Fatal Error] Unit3.pas(8): F2613 Unit 'MMSystem' not found.

答えて

1

MMSystemは、FireMonkeyのライブラリ内のクロスプラットフォーム部ではないので、このコードは、Android上では動作しません。代わりに、VCLライブラリのWindows専用ユニットです。モバイルプロジェクトでは、VCLではなくFireMonkeyのみを使用する必要があります。

Androidでサウンドを再生するには、FireMonkeyのTMediaPlayerコンポーネントをご覧ください。しかし、それはリソースからのオーディオを再生することはできませんので、オーディオファイルをアプリケーションの横に配置し、代わりにファイルから再生する必要があります。

詳細については、EmbarcaderoのAudio-Video in FireMonkeyのドキュメントを参照してください。

+0

リソースから再生するための他のオプションや方法があります。ありがとう。 – Raj

+0

ありがとうございます。 – Raj

+0

@Raj - 回答が問題解決に役立つ場合は、受け入れ済みとマークしてください。 – Rohit

関連する問題