私は自分のプロジェクトに多くの静的ヘルパーメソッドを持っており、しばしばそれらのコンテキストに引数として渡します。このようにコンテキストを渡すと、それの参照を保持するための静的メソッドを引き起こし、メモリリークを引き起こす可能性があればここで二つの例静的メソッドにコンテキストを渡すと、Androidでメモリリークが発生する可能性がありますか?
private static bool SaveSetupDetails(Context context, string sftpAddress, string sftpUserName, string sftpPassword)
{
try
{
using (ISharedPreferences settings = PreferenceManager.GetDefaultSharedPreferences(context))
using (ISharedPreferencesEditor editor = settings.Edit())
{
editor.PutString("VePSFTPAddr", sftpAddress);
editor.PutString("VePSFTPUser", sftpUserName);
editor.PutString("VePSFTPPass", sftpPassword);
editor.Commit();
return true;
}
}
catch (Exception e)
{
Log.Debug("SomeTag", "SomeActivity - SaveSetupDetails threw an exception: " + e.Message);
return false;
}
}
第二の例
public static bool IsCallActive(Context context)
{
AudioManager manager = (AudioManager)context.GetSystemService(Context.AudioService);
if (manager.Mode == Mode.InCall)
{
return true;
}
return false;
}
である私が疑問に思って。または、メソッドの実行が終了した後で参照解除されますか?