رفتن به مطلب
  • 0

نگرفتن اطلاعات ازدیتابیس انلاین درصورتی که وارد برنامه باشدواینترنت خاموش باشددموقع اجرابرنامه روشن شود


iavaduu

سوال

باعرض سلام به همگی

چیزی که میخوام بگم از عنوانش پیداست!

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

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

منظورم فکرکنم یه جورایی شبیه رفرش باشه که مثلا بگه هروقت به اینترنت متصل شد فورا صفحه رو رفرش کنه

لطفا بزرگواری کنید به صورت کد توضیح بدید.

باتشکر

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

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

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

برای این کار احتیاج به برودکست دارید

اول کدهایی که اطلاعات رو از اینترنت میگیره تو یه sub مثلا به نام load بزارید حالا کتابخونه pnbroadcast رو تیک بزن و یه سرویس به صورت زیر بزار

#Region  Service Attributes 
	#StartAtBoot: false
#End Region

Sub Process_Globals
	'These global variables will be declared once when the application starts.
	'These variables can be accessed from all modules.
Dim p As PNBroadcastReceiver
Private M_Bitmap As M_Bitmap_Utils
End Sub

Sub Service_Create
	'This is the program entry point.
	'This is a good place to load resources that are not specific to a single activity.

End Sub

Sub Service_Start (StartingIntent As Intent)
p.Initialize("p")
p.AddAction("android.net.conn.CONNECTIVITY_CHANGE")
p.RegisterReceiver
End Sub
Sub p_OnReceive(Action As String,keys() As String,Data As Object)
	
	If Action="android.net.conn.CONNECTIVITY_CHANGE" Then
		If M_Bitmap.isConnected Then 
			Try
			CallSubDelayed(youractivity,"load")
			Catch
				Return
		End Try
		End If
	End If
End Sub
'Return true to allow the OS default exceptions handler to handle the uncaught exception.
Sub Application_Error (Error As Exception, StackTrace As String) As Boolean
	Return True
End Sub

Sub Service_Destroy

End Sub

این هم کتابخونه mbitmap

موفق باشید

باسلام واقعا ممنون ازپاسخگوییتون نمدونم چجوری تشکر کنم

منظورتون این هست که یه سرویس جدید توی سورس اضافه کنم مثل ماژول یااکتویتی بعدکدهایی که شمادادید رو داخل سرویس واردکنم بعد داخل صفحه مین کدهایی که مربوط به دریافت اطلاعان ازنت هست رو داخل یه ساب به قول شما لود قرار بدم.

دقیقا حرفای شمارو گفتم وهیچ فرقی نداره!

الان اگه این تغییرات رواعمال کنم اگه اینترنتم خاموش باشه وارد برنامه بشم ودراین صورت هیچ اطلاعاتی رو ازاینترنت دریافت نمیکنه

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

پلسخ سئوال بنده فقط بله،خیر هست؟

چون شک دارم که تونسته باشم منظورمو خوب بیان کنم

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

باسلام واقعا ممنون ازپاسخگوییتون نمدونم چجوری تشکر کنم

منظورتون این هست که یه سرویس جدید توی سورس اضافه کنم مثل ماژول یااکتویتی بعدکدهایی که شمادادید رو داخل سرویس واردکنم بعد داخل صفحه مین کدهایی که مربوط به دریافت اطلاعان ازنت هست رو داخل یه ساب به قول شما لود قرار بدم.

دقیقا حرفای شمارو گفتم وهیچ فرقی نداره!

الان اگه این تغییرات رواعمال کنم اگه اینترنتم خاموش باشه وارد برنامه بشم ودراین صورت هیچ اطلاعاتی رو ازاینترنت دریافت نمیکنه

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

پلسخ سئوال بنده فقط بله،خیر هست؟  بله هموطن سرویسی که ارائه شد خدمتتون کارش گوش دادن به قطع و وصل شدن اینترنت هست و به محض اینکه اینترنت وصل بشه اطلاعات دریافت و نمایش داده میشه

حواست باشه تو همون اکتیویتی باشی ها!

چون شک دارم که تونسته باشم منظورمو خوب بیان کنم منظورتو رسوندی واضح :areuok: 

ب

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

هر

 

 

برای این کار احتیاج به برودکست دارید

اول کدهایی که اطلاعات رو از اینترنت میگیره تو یه sub مثلا به نام load بزارید حالا کتابخونه pnbroadcast رو تیک بزن و یه سرویس به صورت زیر بزار

#Region  Service Attributes 
	#StartAtBoot: false
#End Region

Sub Process_Globals
	'These global variables will be declared once when the application starts.
	'These variables can be accessed from all modules.
Dim p As PNBroadcastReceiver
Private M_Bitmap As M_Bitmap_Utils
End Sub

Sub Service_Create
	'This is the program entry point.
	'This is a good place to load resources that are not specific to a single activity.

End Sub

Sub Service_Start (StartingIntent As Intent)
p.Initialize("p")
p.AddAction("android.net.conn.CONNECTIVITY_CHANGE")
p.RegisterReceiver
End Sub
Sub p_OnReceive(Action As String,keys() As String,Data As Object)
	
	If Action="android.net.conn.CONNECTIVITY_CHANGE" Then
		If M_Bitmap.isConnected Then 
			Try
			CallSubDelayed(youractivity,"load")
			Catch
				Return
		End Try
		End If
	End If
End Sub
'Return true to allow the OS default exceptions handler to handle the uncaught exception.
Sub Application_Error (Error As Exception, StackTrace As String) As Boolean
	Return True
End Sub

Sub Service_Destroy

End Sub

این هم کتابخونه mbitmap

موفق باشید

 

سلام

هرچیم گردم این کتابخانهpnbroadcastپیداش نمیکنم 

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

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

هر

 

سلام

هرچیم گردم این کتابخانهpnbroadcastپیداش نمیکنم 

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

 پیداش کردم نمیخواد بفرستید

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

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

آقای شاهپیری اون تغییراتی که شما عرض کردید رو اعمال کردم وسابی که اطلاعات رو لود میکنه اسمش جاب دان هست که دادم به همون سرویس واسم اکتویتی ای که ساب داخلشه روهم دادم ولی بازم هیچ تغییری درعملکرد برنامه نکرده ومثل اوله!

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

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

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

سابی که اطلاعات رو لود میکنه اسمش jobdone هست؟ :fekr:

دوست عزیز شما تا وقتی job رو استارت نکرده باشین چجوری jobdone میگیرین؟

اون سابی که توش job.postString هست رو بزار عزیز

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

بله اشتباه شد اون شاتباه رو رفع کردم ولی میخواستم برای ساب باتنRefresh_clickروهم همین رویداد رو بزارم!

میشه؟

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

آره میشه فقط حواست باشه موقعی که رفرش میشه اطلاعات doublicat نشه حتما اول ویوهای پنلا رو ریموو کن

میتونی این کد رو هم بزاری

Activity_Create(true)
لینک ارسال
به اشتراک گذاری در سایت های دیگر

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

گذشته ازاینکه در بروز رسانی مشکل داشته باشه واطلاعات رو دوبرابر کنه اینااوکی هستن اما نمیدونم چرااینطوریه!

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

اصلا یه شرط برای رفرش کلیک مینویسم که اگه اینترنت متصل بود این کلیک کاربکنه!

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

خب من الان یادم نمیاد دستور چک کردن اینترنتو

چک کن ببین اگ نت وصل شد اون اکتیویتی رو true کن یا اون رویداد httpjob رو لود کن دوباره

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

قبل از اجرا یک دستور شرطی  بزار اگه اینترنت متصل نیست ارور بده متصل بود بعد برنامه رو اجرا کنه

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

برای این کار احتیاج به برودکست دارید

اول کدهایی که اطلاعات رو از اینترنت میگیره تو یه sub مثلا به نام load بزارید حالا کتابخونه pnbroadcast رو تیک بزن و یه سرویس به صورت زیر بزار

#Region  Service Attributes 
	#StartAtBoot: false
#End Region

Sub Process_Globals
	'These global variables will be declared once when the application starts.
	'These variables can be accessed from all modules.
Dim p As PNBroadcastReceiver
Private M_Bitmap As M_Bitmap_Utils
End Sub

Sub Service_Create
	'This is the program entry point.
	'This is a good place to load resources that are not specific to a single activity.

End Sub

Sub Service_Start (StartingIntent As Intent)
p.Initialize("p")
p.AddAction("android.net.conn.CONNECTIVITY_CHANGE")
p.RegisterReceiver
End Sub
Sub p_OnReceive(Action As String,keys() As String,Data As Object)
	
	If Action="android.net.conn.CONNECTIVITY_CHANGE" Then
		If M_Bitmap.isConnected Then 
			Try
			CallSubDelayed(youractivity,"load")
			Catch
				Return
		End Try
		End If
	End If
End Sub
'Return true to allow the OS default exceptions handler to handle the uncaught exception.
Sub Application_Error (Error As Exception, StackTrace As String) As Boolean
	Return True
End Sub

Sub Service_Destroy

End Sub

این هم کتابخونه mbitmap

موفق باشید

M_Bitmap_Utils.zip

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

بایگانی شده

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

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

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