رفتن به مطلب

پست های پیشنهاد شده

ali mo    116

سلام وقت بخیر

خدمت همه دوستان

براتون یک کتابخونه با خود کلاس ارل (KeyValueStore) که البته یه سری تغییرات داخلش دادم ساختم

شما با کتابخونه am_save به راحتی می تونید انواع داده هاتون از جمله ارایه ها ( اینتیجر و استرینگ و...) و لیست و ابجکت و حتی بیتمپ که همون عکس هستش رو ذخیره کنید و هر موقع خواستید اون ها رو حذف کنید یا استفاده کنید یکی از مزیت های این کتابخونه این که به راحتی می تونید ازش استفاده کنید و نیازی نیست در گیر نوشتن فایل بشوید و کاری های اضافی کنید

علاوه بر اون می تونید داده های رو که ذخیره کردید روش رمز هم بزارید (دیتابیس رمز دار)

سورس کتابخونه به علاوه خود کتابخونه پیوست شد

 نکته : حتما دسترسی نوشتن رو برنامه تون بدید.

مثال های کتابخونه :


	'حتما حتما دسترسی ذخیره سازی رو بگیرید به صورت زیر
 Dim  ru As RuntimePermissions
	ru.CheckAndRequest(ru.PERMISSION_WRITE_EXTERNAL_STORAGE)
	Wait For Activity_PermissionResult (Permission As String, Result As Boolean)
	If Result == False Then
		Msgbox("دسترسی ذخیره ضروری هست...","")
		ru.CheckAndRequest(ru.PERMISSION_WRITE_EXTERNAL_STORAGE)
		Wait For Activity_PermissionResult (Permission As String, Result As Boolean)
	End If

	
	'اینشیالایز می کنیم محل ذخیره اطلاعت رو با اسم خودتون
	If FirstTime Then
		kvs.Initialize(File.DirDefaultExternal, "datastore")
	End If
	
	
	
	
	
	Try
		

		'ایجاد یک ارای اینتجر و ذخیره کردن اون داخل دیتا
	 Dim size_array As Int = 5
		Dim arint(size_array) As Int
		For i = 0 To size_array-1
			arint(i) = i*5
		Next
		kvs.PutObject("arrayint", arint)
	
		'گرفتن اون ارایه
		Dim arnint() As Int = kvs.GetObject("arrayint")
		For i1 = 0 To arnint.Length-1
			Log($"{${i1}} : "$ & arnint(i1))
		Next
	
	

	Catch
		Log(LastException)
	End Try
	
	
	

		

	'ایجاد یک ارایی استرینگ و ذخیره کردن اون داخل دیتا
	
	Dim ar(20) As String
	For i = 0 To 5
		ar(i) = ("am_save #" & i)
	Next
	kvs.PutObject("array", ar)
	
	'گرفتن اون ارایه
	Dim arn() As String = kvs.GetObject("array")
	For i1 = 0 To arn.Length-1
	Log(arn(i1))
	Next
	

	
	Try
'	ذخیره یک مقدار ساده مانند ساعت
	kvs.PutSimple("time", DateTime.Now)
	'گرفتن مقدار ساده
	Log(DateTime.Time(kvs.GetSimple("time")))
 'حذف مقدار اون 
	kvs.Remove("time")
	
	Catch
		ToastMessageShow("خطا",True)
		Log(LastException)
	End Try
	
	
	
	
	Try
'	'ذخیره مقادیر بیت مپ یا همون عکس
	kvs.PutBitmap("bitmap1", LoadBitmap(File.DirAssets, "ic.png"))
'	'گرفتن مقدار عکس و نمایش در خود اکتویتی
	
 ImageView1.Color = Colors.Black
		ImageView1.Bitmap = kvs.GetBitmap("bitmap1")
	
'	'حذف اون مقدار
	kvs.Remove("bitmap1")
	
	Catch
		ToastMessageShow("خطا",True)
		Log(LastException)
	End Try
	
	
	
	
	
	
	Try
	
	'ایجاد یک لیست و ذخیره کردن اون داخل دیتا
	Dim list1 As List
	list1.Initialize
	For i = 1 To 10
		list1.Add("Item #" & i)
	Next
	kvs.PutObject("list1", list1)
	
	'گرفتن اون لیست
	Dim list2 As List = kvs.GetObject("list1")
	Log(list2)
	
	
	
	
	Catch
		ToastMessageShow("خطا",True)
		Log(LastException)
	End Try
	
	
	
	
	
	
	
	
	
 Try
		

	
'	'لیست رمز گذاری شده (دیتابیس)
	kvs.PutEncyptedObject("encrypted list", list1, "پسورد صحیح")
	Try
		'در حالت دیباگ این مورد کار نمی کنه و  در حالت ریلیس کمپایل کنید
		list2 = kvs.GetEncryptedObject("encrypted list", "پسورد اشتباه")
	Catch
		Log("Wrong password!")
	End Try
	'نمایش لیست رمز دار با لاگ
	list2 = kvs.GetEncryptedObject("encrypted list", "پسورد صحیح")
	Log(list2)
	
	Catch
		ToastMessageShow("خطا",True)
		Log(LastException)
	End Try

 

Am_save.zip

  • پسندیدن 3

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
ali mo    116
در 2 ساعت قبل، mahdi tahan گفته است :

با چه فرمتی ذخیره میکنه؟از خارج نرم افزار هم قابل خواندن و ویرایش هست؟

با دیتابیس ذخیره می کنه (sql)و می تونید مسیرش داخل اینشیالایز انتخاب کنید که داخل فایل دایر اینترنال باشه

و روی دیتابیس می تونید رمز بزارید

سورس کد کتابخونه رو مشاهده کنید کاملا متوجه می شید

(ولی خوب اگر در مورد امنیت می پرسید خودتون بررسی کنید امنیت خیلی بالای نیست بیشتر برای ذخیره ارایه بی ارزش داخل برنامه استفاده میشه هر چند داخل دایر اینترنال پرویت اطلاعات تا اونجای که بنده می دونم و نیاز به دسترسی خواندن نوشتن هم نیست برای این مسیر )

  • پسندیدن 1

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
ali mo    116
در 8 ساعت قبل، mahdi tahan گفته است :

ی سوال دیگ خود عکس رو ذخیره میکنه یا ادرس عکس رو؟اگ عکس از ادرس پاک شد دیگ نشون نمیده؟

خود عکس رو ذخیره می کنه  داخل دیتابیس

(بازم بررسی کنید شاید من دقت نکردم)

 

  • پسندیدن 1

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به عنوان یک لینک به جای

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.


×
×
  • جدید...