رفتن به مطلب
بخش Unity به انجمن اضافه شد
  • 0

مشکل در RunTimePermission


امیرحسین قاسمی

سوال

سلام،

من از runtime  برای گرفتن دسترسی حافظه در Activity_Create اکتویتی Main استفاده می کنم.

امّا اگر کاربر برای اولین بار وارد برنامه شود Activty خاتمه می یابد و به بیرون از برنامه منتقل می شود و پنجره این ران تایم در خارج از اپلیکیشن باز می شود.(اگر کاربر آن را تایید کند دسترسی با موفقیت داده میشود.)

امّا من نمیخواهم اینگونه باشد بلکه میخواهم در روی همان اکتویتی این پنجره ران تایم بالا بیاید نه اینکه باعث خاتمه اکتویتی شود و در بیرون برنامه اجرا شود!!

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

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

ارسال‌های توصیه شده

در 21 ساعت قبل، امیرحسین قاسمی گفته است :

سلام،

من از runtime  برای گرفتن دسترسی حافظه در Activity_Create اکتویتی Main استفاده می کنم.

امّا اگر کاربر برای اولین بار وارد برنامه شود Activty خاتمه می یابد و به بیرون از برنامه منتقل می شود و پنجره این ران تایم در خارج از اپلیکیشن باز می شود.(اگر کاربر آن را تایید کند دسترسی با موفقیت داده میشود.)

امّا من نمیخواهم اینگونه باشد بلکه میخواهم در روی همان اکتویتی این پنجره ران تایم بالا بیاید نه اینکه باعث خاتمه اکتویتی شود و در بیرون برنامه اجرا شود!!

سوالتون نامفهومه دوست عزیز. به صورت پیشفرض دیالوگ مربوط به دسترسی رانتایم تو محیط برنامه و اکتیویتی باز میشه

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

در 2 ساعت قبل، محمدرضا شاهپیری گفته است :

سوالتون نامفهومه دوست عزیز. به صورت پیشفرض دیالوگ مربوط به دسترسی رانتایم تو محیط برنامه و اکتیویتی باز میشه

آقای شاهپیری بله درست میگین!

اما برای من به محض ورود در صورتی که دسترسی نباشد، اکتویتی پایان می یابد و از برنامه خارج می شود و سپس دیالوگ اجرا می شود.

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

در 4 ساعت قبل، امیرحسین قاسمی گفته است :

آقای شاهپیری بله درست میگین!

اما برای من به محض ورود در صورتی که دسترسی نباشد، اکتویتی پایان می یابد و از برنامه خارج می شود و سپس دیالوگ اجرا می شود.

لطفا کدهاتونو پیوست کنید. و اینکه روی چه دیوایسی با چه نسخه اندرویدی تست میکنید

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

در 17 ساعت قبل، محمدرضا شاهپیری گفته است :

لطفا کدهاتونو پیوست کنید. و اینکه روی چه دیوایسی با چه نسخه اندرویدی تست میکنید

#Region  Project Attributes 
	#ApplicationLabel: hafez
	#VersionCode: 1
	#VersionName: 1.1
	#SupportedOrientations: portrait
	#CanInstallToExternalStorage: False
#End Region
#Region  Activity Attributes 
	#FullScreen: true
	#IncludeTitle: false
	#AdditionalJar : tapsellsdk-b4a-4.0.4.jar
    #AdditionalJar : gson-2.8.5.jar
#End Region
#AdditionalJar: com.android.support:support-compat

Sub Process_Globals
	Private rp As RuntimePermissions
End Sub

Sub Globals
End sub

Sub Activity_Create(FirstTime As Boolean)
	Activity.LoadLayout("splash")
	
	rp.CheckAndRequest(rp.PERMISSION_WRITE_EXTERNAL_STORAGE)'این میاد چک می کنه دسترسی پرمیشن حافظه رو
	
End Sub

Sub Activity_PermissionResult (Permission As String, Result As Boolean)
	If Permission = rp.PERMISSION_WRITE_EXTERNAL_STORAGE Then
		
		If Result=True Then
			Toastmessageshow("اجازه دسترسی به حافظه صادر شد",true)
		Else
			Msgbox("این برنامه جهت کارکرد صحیح به مجوز حافظه نیاز دارد.","")
			Activity.Finish
		End If
		
	End If
End Sub

sub btn1_click
startactivity(Main2)
activity.finish
End sub

آقای شاهپیری این کدهای اکتویتی Main بنده هست.

اگه کاربر برای اولین بار برنامه رو اجرا کنه بجای اینکه دیالوگ پرمیشن حافظه روی لایوت اجرا بشه، برنامه بسته میشه و در خارج از برنامه نمایش داده میشه. اگه طرف رد کنه هیچ اتفاق خاصی نمیفته. اگه طرف تایید کنه پرمیشن توی تنظیمات فعال میشه اما اون Toast نمایش داده نمیشه!

 

روی اندروید 7، اندروید10،اندروید5 چک کردم همش اینطوری هستن.

باتشکر از زحمات شما:53:

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

در 10 ساعت قبل، امیرحسین قاسمی گفته است :

آقای شاهپیری این کدهای اکتویتی Main بنده هست.

اگه کاربر برای اولین بار برنامه رو اجرا کنه بجای اینکه دیالوگ پرمیشن حافظه روی لایوت اجرا بشه، برنامه بسته میشه و در خارج از برنامه نمایش داده میشه. اگه طرف رد کنه هیچ اتفاق خاصی نمیفته. اگه طرف تایید کنه پرمیشن توی تنظیمات فعال میشه اما اون Toast نمایش داده نمیشه!

 

روی اندروید 7، اندروید10،اندروید5 چک کردم همش اینطوری هستن.

باتشکر از زحمات شما:53:

کدها موردی نداره احتمالا یادتون رفته دسترسی رو توی منیفست هم اضافه کنید. کد زیر رو اضافه کنید به منیفست

AddPermission(android.permission.WRITE_EXTERNAL_STORAGE)

 

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

در 6 ساعت قبل، محمدرضا شاهپیری گفته است :

کدها موردی نداره احتمالا یادتون رفته دسترسی رو توی منیفست هم اضافه کنید. کد زیر رو اضافه کنید به منیفست


AddPermission(android.permission.WRITE_EXTERNAL_STORAGE)

 

این رو دقیقا قبلا اضافه کرده ام!

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

سلام وقت بخیر 

داخل ساب resume چیزی نوشتید ؟

با پروژه خالی خروج بگیرید بدون تپسل و...

ساب 

Activity_PermissionResult

کلا پاک کنید و مجدد یدون فقط ساب خالی بسازید از طریق دیزاینر

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

در 1 ساعت قبل، ali mo گفته است :

سلام وقت بخیر 

داخل ساب resume چیزی نوشتید ؟

با پروژه خالی خروج بگیرید بدون تپسل و...

ساب 


Activity_PermissionResult

کلا پاک کنید و مجدد یدون فقط ساب خالی بسازید از طریق دیزاینر

خیر فقط در pause گفتم که کلا برنامه از برنامه خارج بشه

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

سلام مجدد،

مشکل کاملا برطرف شد.بخاطر همون pause بود که توش دستور Activity.Finish رو نوشته بودم.

درواقع با اجرای دیالوگ پرمیشن pause هم فراخوانی میشه.

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

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...