Konuyu Oyla:
  • Derecelendirme: 4/5 - 1 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Delphi Dahili Hafıza Boyutu Öğrenme
#1
Merhaba arkadaşlar 
Delphide bir android uygulaması projemde dahili hafıza boyutunu öğrenmem gerekiyor ama googlede aramama rağmen bir örnek bulamadım. Bu konuda yardımlarınıza ihtiyacım var. 

(Not : Delphi 10.1.2 Berlin kullanıcısıyım.)
Cevapla
#2
(07-01-2018, Saat: 01:10)codder71 Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.Merhaba arkadaşlar 
Delphide bir android uygulaması projemde dahili hafıza boyutunu öğrenmem gerekiyor ama googlede aramama rağmen bir örnek bulamadım. Bu konuda yardımlarınıza ihtiyacım var. 

(Not : Delphi 10.1.2 Berlin kullanıcısıyım.)

Ekte ram durumunu gosteren bir uygulama var
Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.
Bu dünyada kendine sakladığın bilgi ahirette işine yaramaz. 
Cevapla
#3
hocam cevabınız teşekkürler yalnız ben yanlış anlattım galiba benim öğrenmek istediğim olay cihazın kullanılabilir alanı (örneğin : 16 gb hafızası olan bir cihazın mesela 4 gb kullanılabilir alanı) bunu öğrensem yeter toplam hafıza boyutu bilgisine vs. ihtiyacım yok veri alış verişi yapan bir uygulamada kullanmak istiyorum. Cevaplarınızı bekliyorum teşekkürler.
Cevapla
#4
  {$IFDEF ANDROID}
  aStatFS := TJALStatFs.JavaClass.init(StringToJstring(aDir));
 if (TJBuild_VERSION.JavaClass.SDK_INT < 18 {Android 4.3 - JELLY_BEAN_MR2}) then aTmpAvailableSpace := aStatFS.getBlockSize * aStatFS.getAvailableBlocks
 else aTmpAvailableSpace := aStatFS.getAvailableBytes;
 aStatFS := nil;
 {$ELSEIF defined(IOS) or defined(_MACOS)}
 aFileManager := TNSFileManager.Wrap(TNSFileManager.OCClass.defaultManager);
 aDict := aFileManager.attributesOfFileSystemForPath(StrToNSStr(aDir), nil);
 if aDict = nil then aTmpAvailableSpace := 0
 else begin
   aPointer := aDict.objectForKey((CocoaNSStringConst(FoundationFwk, 'NSFileSystemFreeSize') as ILocalObject).GetObjectID);
   if Assigned(aPointer) then aTmpAvailableSpace := TNSNumber.Wrap(aPointer).unsignedLongLongValue
   else aTmpAvailableSpace := 0;
 end;
 {$ELSEIF defined(MSWINDOWS)}
 aDiskDrive := ALupperCaseU(AlStringReplaceU(ExtractFileDrive(aDir), ':', '', []));
 if length(aDiskDrive) = 1 then aTmpAvailableSpace := DiskFree(ord(aDiskDrive[low(aDiskDrive)]) - $40)
 else aTmpAvailableSpace := 0;
 {$ENDIF}

--Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.

Üstat dene bir istersen; 

Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.


Saygılarımla,
İyi çalışmalar.
Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.
Cevapla
#5
(07-01-2018, Saat: 22:55)hyperxman Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.
  {$IFDEF ANDROID}
  aStatFS := TJALStatFs.JavaClass.init(StringToJstring(aDir));
 if (TJBuild_VERSION.JavaClass.SDK_INT < 18 {Android 4.3 - JELLY_BEAN_MR2}) then aTmpAvailableSpace := aStatFS.getBlockSize * aStatFS.getAvailableBlocks
 else aTmpAvailableSpace := aStatFS.getAvailableBytes;
 aStatFS := nil;
 {$ELSEIF defined(IOS) or defined(_MACOS)}
 aFileManager := TNSFileManager.Wrap(TNSFileManager.OCClass.defaultManager);
 aDict := aFileManager.attributesOfFileSystemForPath(StrToNSStr(aDir), nil);
 if aDict = nil then aTmpAvailableSpace := 0
 else begin
   aPointer := aDict.objectForKey((CocoaNSStringConst(FoundationFwk, 'NSFileSystemFreeSize') as ILocalObject).GetObjectID);
   if Assigned(aPointer) then aTmpAvailableSpace := TNSNumber.Wrap(aPointer).unsignedLongLongValue
   else aTmpAvailableSpace := 0;
 end;
 {$ELSEIF defined(MSWINDOWS)}


 aDiskDrive := ALupperCaseU(AlStringReplaceU(ExtractFileDrive(aDir), ':', '', []));
 if length(aDiskDrive) = 1 then aTmpAvailableSpace := DiskFree(ord(aDiskDrive[low(aDiskDrive)]) - $40)
 else aTmpAvailableSpace := 0;
 {$ENDIF}

--Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.

Üstat dene bir istersen; 

Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.


Saygılarımla,
İyi çalışmalar.

Hocam cevabın için teşekkürler fakat kodlar hata veriyor apkyı derlemeyi başaramadım. Sitede detaylı bir açıklama da bulamadım maalesef
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Delphi fmx ile Play store uygulama içi satın alma işlemi crowlin 2 183 27-09-2019, Saat: 23:07
Son Yorum: crowlin
  Delphi FMX Server kullanımı mfb23 4 228 27-09-2019, Saat: 14:03
Son Yorum: Halil Han Badem
  Delphi 10.3.2 Firebase H4k4nn 2 237 11-09-2019, Saat: 10:04
Son Yorum: H4k4nn
  Her yeni sürümde artan apk boyutu ? Mr.Developer 0 136 20-08-2019, Saat: 09:56
Son Yorum: Mr.Developer
Question Delphi 10.3 Rio ile Firebird veritabanına android üzerinden erişim budanur 12 654 22-07-2019, Saat: 08:31
Son Yorum: Fesih ARSLAN



Konuyu Okuyanlar: 1 Ziyaretçi