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

مشکل برگشت به اکتیویتی قبل با httputil


ha88an

سوال

دوستان همه میدونیم وقتی برای مثال توی اکتیویتی 1 یه job رو بفرستی یه فایل php رو دانلود کنه بعد در همین حال اگه کاربر بره به اکتیویتی 2 اونوقت زمانی که job تموم بشه برمیگرده بصورت خودکار به اکتیویتی 1 !

چجوری میشه جلوی این رو گرفت که برنگرده به اکتیویتی که ازش اجرا شده؟

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

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

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

سلام دوست عزیز من خودمم با این مورد برخورد کردم ولی الان نمیدونم منظورتون رو دقیق متوجه شدم یا نه حالا راه حل منو امتحان کنید ( من توی سرویس بود job ) اومدم توی بخش Activity Pause کد مربوط با بستن Activity یعنی Activity.Finish  رو نوشتم بازم میگم فک می کنم مورد شما فرق میکنه اما حالا اگه امتحان کنی ضرر نداره توی اکتویتی اول این کدو بزن دنیا رو چه دیدی شاید کار کرد:yahoo:

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

درود

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

که مشکلی هم بوجود نیاد !!!

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

سلام

من این مشکلو داشتم چند وقت پیش

جستجو کردم

جناب ایزدی یه کدی رو برای دانلود گذاشته بودن خیلی مفید بود

البته واسه فایلای سنگین گیج میزد

گاهی دانلود ناقص داشت

ولی یه سری چیزا کم و زیاد کردم درست شد

یه دیالوگ میاره روند دانلودو میده+ دکمه لغو

مشکل مذکور رو هم حل میکنه

نیاز به ساخت سرویس نیست

اگه میخواید بزارم

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

در 2 ساعت قبل، reza644 گفته است :

سلام

من این مشکلو داشتم چند وقت پیش

جستجو کردم

جناب ایزدی یه کدی رو برای دانلود گذاشته بودن خیلی مفید بود

البته واسه فایلای سنگین گیج میزد

گاهی دانلود ناقص داشت

ولی یه سری چیزا کم و زیاد کردم درست شد

یه دیالوگ میاره روند دانلودو میده+ دکمه لغو

مشکل مذکور رو هم حل میکنه

نیاز به ساخت سرویس نیست

اگه میخواید بزارم

ممنون میشم کد رو قرار بدید من هم نیاز دارم به این موضوع 
با تشکر

ولی اصولی این دریافت و ارسال ها اینه که از سرویس استفاده کنید 
ولی اگر لازم هست در اکتیویتی باشه میتونید اگر کاربر خارج شد پیام بدید "" در صورت برگشت دانلود شما لغو میشود یا ...""  که اصلا زیبا و استاندارد نیست 
من پیشنهادم سرویس هست 

 

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

در 29 دقیقه قبل، arastooms گفته است :

ممنون میشم کد رو قرار بدید من هم نیاز دارم به این موضوع 
با تشکر

ولی اصولی این دریافت و ارسال ها اینه که از سرویس استفاده کنید 
ولی اگر لازم هست در اکتیویتی باشه میتونید اگر کاربر خارج شد پیام بدید "" در صورت برگشت دانلود شما لغو میشود یا ...""  که اصلا زیبا و استاندارد نیست 
من پیشنهادم سرویس هست 

 

این کد رو توی پروژم استفاده کردم

طوریه که بعد از دانلود فایل رو پخش و قطع میکنه

کپی کردن فایل هم به خاطر اینه که وقتی دانلود به صورت ناتمام انجام شه

فایلش داخل پوشه مورد نظر میمونه

به خاطر همین یه پوشه دوم دادم که بعد دانلود فایل رو به پوشه اصلی

کپی کنه و بعد از اتمام اونو از پوشه اولی پاک کنه

2pl دکمه پخش

pl دکمه پخشه فرقش با بالایی اینه که مدیا پلیر رو اینیشیالایز میکنه

st دکمه لغو پخشه

pu دکمه مکثه

و dw دکمه دانلود

اگه فضای کافی تو گوشی نباشه دانلود ناقص انجام میشه

قبل از اینکه درصد به صد برسه

برای همین متغیر dar رو از نوع int تعریف کردم که اگه

rs_finish شد اگه صد نباشه پیغام نبود فضا بده

dialog1 هم به خاطر اینه که اگه دانلود ناموفق بود dialog رو ببنده یه بار دیگه دانلود کنه

 

سوالی بود در خدمتم

 

#Region  Activity Attributes 
    #FullScreen: False
    #IncludeTitle: 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.

End Sub

Sub Globals
    'These global variables will be redeclared each time the activity is created.
    'These variables can only be accessed from this module.
Dim lbl As Label
Dim lpic As Label
Dim awake As PhoneWakeState
    Dim link,name As String
    Dim mediaplayer1 As MediaPlayer
	Dim lname As Label
	Dim lurl As Label
Dim fara As Farakhani
	Private ScrollView1 As ScrollView
'	Private  As Button
'	Private  As Button
	Dim l As Label
'	Dim cafe As Intent
	Dim ts As TextSetting
	Private dw As Button
	Private st As Button
	Private pu As Button
	Private pl As Button
	Private imageview1 As ImageView
	Private pl2 As Button
	Dim m2 As m2Lib
		Dim no As Notification
	Dim tite2 As String
	Dim tite1 As Label
	Private Label1 As Label
	Dim h As Int
	Dim dialog As AriaProgressDialog
	Dim dialog1 As AriaProgressDialog
Dim rs As RSAsyncDownloader
Dim CopyTask As AriaAsyncTask

End Sub

Sub Activity_Create(FirstTime As Boolean)
    'Do not forget to load the layout file created with the visual designer. For example:
    Activity.LoadLayout("download")
	' sakhte button
	
dialog1.initialize("dialog1")
File.MakeDir(File.DirRootExternal, "kodack")
File.MakeDir(File.DirRootExternal, "kodak")
tite1.Initialize("")
lname.Initialize("")
lurl.Initialize("")
dw.Visible=True
pl.Visible=False
pu.Visible=False
st.Visible=False
pl2.Visible=False
h=0
lbl.Initialize("")
l.Initialize("")
lpic.Initialize("")	
ts.Initialize

lbl.TextColor=Colors.Black
lbl.Typeface=Typeface.LoadFromAssets("Far_KoodkBd.ttf")
Label1.Typeface=Typeface.LoadFromAssets("Far_KoodkBd.ttf")
dw.Typeface=Typeface.LoadFromAssets("Far_KoodkBd.ttf")
pl.Typeface=Typeface.LoadFromAssets("Far_KoodkBd.ttf")
pu.Typeface=Typeface.LoadFromAssets("Far_KoodkBd.ttf")
st.Typeface=Typeface.LoadFromAssets("Far_KoodkBd.ttf")
pl2.Typeface=Typeface.LoadFromAssets("Far_KoodkBd.ttf")
		
	If(File.Exists(File.DirRootExternal,"c.txt")) Then 
		
	Dim str As String
str = File.readString(File.DirRootExternal,"c"&".txt")
If str = "Colors.Black" Then
lbl.textColor = Colors.Black
Else If str = "Colors.Red" Then
lbl.textColor = Colors.Red
Else If str = "Colors.Blue" Then
lbl.textColor = Colors.Blue
End If
Else
lbl.textColor = Colors.Black		
	End If


fara.FarakhaniMatn("kodack.db",Main.sql1,Main.cur,"SELECT * FROM ghese1 where id=",ghese.meghdar,tite1,"titr")
fara.FarakhaniMatn("kodack.db",Main.sql1,Main.cur,"SELECT * FROM ghese1 where id=",ghese.meghdar,lbl,"matn")
fara.FarakhaniMatn("kodack.db",Main.sql1,Main.cur,"SELECT * FROM ghese1 where id=",ghese.meghdar,lname,"name")
fara.FarakhaniMatn("kodack.db",Main.sql1,Main.cur,"SELECT * FROM ghese1 where id=",ghese.meghdar,lurl,"url")
fara.FarakhaniMatn("kodack.db",Main.sql1,Main.cur,"SELECT * FROM ghese1 where id=",ghese.meghdar,lpic,"pic2")
tite2=tite1.Text		
link=lurl.Text
name=lname.Text
'		lbl.Textsize=File.GetText(File.DirRootExternal,"textsize"&".txt")
'		l.Text=File.GetText(File.DirRootExternal,"textsize"&".txt")
	imageview1.SetBackgroundImage(LoadBitmap(File.DirAssets,lpic.Text))

	imageview1.Height=m2.GetPicHeight(imageview1)
	imageview1.Width=m2.GetPicWidth(imageview1)
			If(File.Exists(File.DirRootExternal & "/kodack", lname.Text)) Then 
				
	 ToastMessageShow("نیازی به دانلود نیست",  True)
	
	mediaplayer1.Initialize2("mediaplayer1")
mediaplayer1.Load(File.DirRootExternal & "/kodack", lname.Text)
    mediaplayer1.Looping=False

dw.Visible=False
pl.Visible=True
pu.Visible=False
st.Visible=True
pl2.Visible=False	
Label1.Visible=False			
Else
Label1.Visible=False


	End If

			If(File.Exists(File.DirRootExternal,"s.txt")) Then 
'		lbl.Textsize=File.GetText(File.DirRootExternal,"textsize"&".txt")
'		l.Text=File.GetText(File.DirRootExternal,"textsize"&".txt")
		
		Main.cur.Position = 0
		
ScrollView1.Panel.AddView(lbl,0,0,75.5%x,100%y)
ts.LongText(lbl,lbl.Text,File.GetText(File.DirRootExternal,"s"&".txt"),ScrollView1,1.5)
Else
ScrollView1.Panel.AddView(lbl,0,0,75.5%x,100%y)
ts.LongText(lbl,lbl.Text,18,ScrollView1,1.5)

	End If

	lbl.Gravity=Gravity.RIGHT

	mediaplayer1.Initialize2("mediaplayer1")


awake.KeepAlive(True)
	'initialize AsyncTask
	CopyTask.Initialize("copy")
End Sub


Sub Activity_Pause (UserClosed As Boolean)



End Sub
Sub dw_Click
	h=1
dialog.initialize("dialog")
		dialog.setTitle("در حال دانلود")
		dialog.setCancelable(False)
		dialog.setCanceledOnTouchOutside(False)
		dialog.SetIcon(LoadBitmap(File.DirAssets,"icon.png"))
		dialog.setMax(100)
		dialog.setIndeterminate(False)
		dialog.STYLE_Horizontal
		dialog.setMessage(tite1.Text)
		dialog.setPositiveButton("توقف دانلود")
		dialog.Show
		rs.initialize("rs")
		rs.Directory = File.DirRootExternal & "/kodak"
'		rs.FileName = "home/"&name
rs.FileName=name
		Log("kodak/"&name)
		rs.Download(link)

dialog1.dismiss

dw.Visible=True
pl.Visible=False

name=lname.Text

link=lurl.Text




Label1.Visible=False




 
End Sub
Sub pl_click
mediaplayer1.Load(File.DirRootExternal & "/kodack", lname.text)
mediaplayer1.Play
dw.Visible=False
pl.Visible=False
pu.Visible=True
st.Visible=True
pl2.Visible=False
h=2
no.Initialize
no.Icon="icon"
no.Light=True
no.Vibrate = False
no.sound = False
no.AutoCancel=False
no.OnGoingEvent=True
no.SetInfo("درحال پخش...",tite2,Null)
no.AutoCancel=True
no.Cancel(1)
no.Notify(1)
End Sub
Sub pu_click
mediaplayer1.Pause
dw.Visible=False
pl.Visible=False
pu.Visible=False
st.Visible=True
pl2.Visible=True
h=0
no.Cancel(1)
End Sub
Sub st_click
mediaplayer1.Stop
dw.Visible=False
pl.Visible=True
pu.Visible=False
st.Visible=True
pl2.Visible=False
h=0
no.Cancel(1)
End Sub
Sub pl2_click
mediaplayer1.Play
dw.Visible=False
pl.Visible=False
pu.Visible=True
st.Visible=True
pl2.Visible=False
h=2
no.Initialize
no.Icon="icon"
no.Light=True
no.Vibrate = False
no.sound = False
no.AutoCancel=True
no.OnGoingEvent=True
no.SetInfo("درحال پخش...",tite2,Null)
no.AutoCancel=True

no.Notify(1)
End Sub
Sub mediaplayer1_Complete
dw.Visible=False
pl.Visible=True
pu.Visible=False
st.Visible=True
pl2.Visible=False
h=0
no.Cancel(1)
End Sub



Sub Activity_Resume

End Sub
	

'Sub ImageView7_Click	
'	cafe.Initialize(cafe.ACTION_EDIT,"bazaar://details?id=com.sorod.pack") 
'	StartActivity(cafe) 
'End Sub



'Sub CreateUri(uri As String) As Object
'   Dim r As Reflector
'   Return r.RunStaticMethod("android.net.Uri", "parse", Array As Object(uri), Array As String("java.lang.String"))
'End Sub

Sub Activity_KeyPress (KeyCode As Int) As Boolean

If h=1 Then
	  If KeyCode = KeyCodes.KEYCODE_BACK Then
		rs.Cancel(True)
	Return False
    End If

	
End If

If h=2 Then
	
	    If KeyCode = KeyCodes.KEYCODE_BACK Then
 Dim rr As Int         
    rr = Msgbox2("پخش لغو شه؟","","آره","","نه",LoadBitmap(File.DirAssets,"icon.png"))    
	  
    If ( rr = DialogResponse.POSITIVE) Then 


no.Cancel(1)


mediaplayer1.Stop
Activity.Finish
    End If
	
	
	
	
    If ( rr = DialogResponse.NEGATIVE) Then 
Return True
    End If


	
End If

End If








End Sub

Private Sub rs_Started

End Sub

Private Sub rs_Update (Progress As Int)

	Try
dialog.setProgress(Progress)
dialog1.setProgress(Progress)
Catch
If File.Exists(File.DirRootExternal & "/kodack", lname.Text) Then
File.Delete(File.DirRootExternal & "/kodack", lname.Text)
	dw.Visible=True
	
End If
End Try
End Sub

Private Sub rs_Finished (Result As String)
		Try
	If Main.net.TestInterntConnection=True Then
	If File.Exists(File.DirRootExternal & "/kodak", lname.Text) Then
		
	h=3


	dialog.dismiss
	rs.Cancel(True)
	ToastMessageShow("دانلود شد!",True)
		Label1.Visible=False
dw.Visible=False
pl.Visible=True
pl2.Visible=False
st.Visible=True


	CopyTask.Run(Null) 
Else
	h=1
	dialog.dismiss
dialog1.initialize("dialog1")
		dialog1.setTitle("دانلود مجدد")
		dialog1.setCancelable(False)
		dialog1.setCanceledOnTouchOutside(False)
		dialog1.SetIcon(LoadBitmap(File.DirAssets,"icon.png"))
		dialog1.setMax(100)
		dialog1.setIndeterminate(False)
		dialog1.STYLE_Horizontal
		dialog1.setMessage(tite1.Text)
		dialog1.setPositiveButton("توقف دانلود")
		dialog1.Show
		rs.initialize("rs")
		rs.Directory = File.DirRootExternal & "/kodak"
'		rs.FileName = "home/"&name
rs.FileName=name
		Log("kodak/"&name)
		rs.Download(link)	
	End If
Else

Msgbox("عدم اتصال به اینترنت","خطا")
	rs.Cancel(True)
dialog.dismiss
dialog1.dismiss

End If











Catch
If File.Exists(File.DirRootExternal & "/kodak", lname.Text) Then
File.Delete(File.DirRootExternal & "/kodak", lname.Text)
	dw.Visible=True
		rs.Cancel(True)
End If
	End Try
End Sub





Sub copy_DoInBackground(params() As Object) As Object
	

			
File.Copy(File.DirRootExternal & "/kodak",lname.Text,File.DirRootExternal & "/kodack",lname.Text)
File.Copy(File.DirRootExternal & "/kodak",lname.Text,File.DirRootExternal & "/kodack",lname.Text)

		CopyTask.PublishProgress(1) ' be sub OnProgressUpdate meqdare 1 o mifrestim ta unja yeki be meqdare progressAriaProgressDialoglog ezafe she

	
End Sub

Sub copy_OnPostExecute(param As Object)
	' zamani ke task tamum shod va kar anjam shod
ProgressDialogHide
	File.Delete(File.DirRootExternal & "/kodak", lname.Text)
End Sub

Sub copy_OnPreExecute
	'zamani ke task shoru be kar kardan mikone miaim ProgressAriaProgressDialoglog ro namayesh midim
ProgressDialogShow("درحال آماده سازی")
End Sub










 

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

بایگانی شده

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

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

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