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

ایجاد چند رویداد JobDone


ehspor

سوال

سلام

می خواستم بپرسم که ایا کسی از دوستان می دونه چطور می شه تو یک اکتیویتی چند رویداد جاب دان داشت

منظورم اینه که میشه چند متغیر httpjob ایجاد کرد با چند رویداد جاب دان متفاوت که با فراخانی هر کدام همزمان و به موازات هم کار کنه

مرسی

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

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

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

سلام من تست نکردم اما فکر میکنم بشه هرکدومو شماره بندی کرد. اینجور فکر نکنم قاطی کنه

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

سلام.

میتونید چند تا متغیر از نوع httpjob تعریف کنید با initialize های مختلف.

بعد توی jobone شرط میزارید " If HttpJob1.JobName = "myjob1" then " و کارتون رو انجام میدید.

همینجور ادامه میدید...

else if HttpJob1.JobName = "myjob2"

ساده هست.

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

دقیقا راهی که مهدی گفت درسته.... فک می کنم هر چند تا httpjob که تعریف کنید در کل اکتیویتی فقط یه رویداد jobdone دارید. حالا با select case یا if بر اساس job name که قبلا میدید میتونید کد بنویسید

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

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

اگه می شه لطفا در این باره توضیح بدید .

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

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

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

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

اگه می شه لطفا در این باره توضیح بدید .

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

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

واسه یه همچین کاری باید از لایبرری download manager استفاده کنی.

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

خودم اگه بخوام کامل همه چیشو در بیارم و توضیح بدم وقت گیره الان وقتشو ندارم.

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

http://s5.picofile.com/file/8155087850/DownloadManager.rar.html

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

کاش یکی بگه چطور میشه تو همین لایبراری دانلود لغو کرد

دوست عزیز شما هم از لایبرری که تو پسا قبل توضیح دادم استفاده کن و:

Dim a As DownloadManager
   a.Remove

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

حالا که بحث جاب داون شد:

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

اگر میشه این کارو کرد ممنون میشم کمکم کنید تا بتونم برنامه رو اپدیت کنم

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

توی سرویس ماژول هم قابل اجراس....

من این کد رو توی یه سرویس برای آپدیت کردن دیتابیسم گذاشتم کاملا کار هم می کنه.

جایی نیاز به توضیح داشت در خدمتم.

#Region  Service Attributes 
   #StartAtBoot: true
#End Region

Sub Process_Globals
   Dim HTDBUPdator As HttpJob
   Dim notification1 As Notification
End Sub
Sub Service_Create
   HTDBUPdator.Initialize("HTDBUPdator", Me)
End Sub

Sub Service_Start (StartingIntent As Intent)
   HTDBUPdator.Download("http://dragondroid.ir/...........checkversion.php")
End Sub

Sub JobDone (job As HttpJob)
   If job.Success = True Then
       If job.JobName = "HTDBUPdator" Then
       Dim f() As String
               f = Regex.Split("
",job.GetString)
               If f(1) <> Main.dbversion Then
                   notification1.Initialize
                   notification1.SetInfo("در حال به روز رسانی دیتابیس", "لطفا منتظر باشید", Main)
                   notification1.Icon = "icon"
                   notification1.Vibrate = False
                   Service.StartForeground(1, notification1)
                   CallSub(Main, "updatedatabase")
               End If
       End If
   Else
   End If
   job.Release
   Service.StopForeground(1)
End Sub

Sub Service_Destroy

End Sub

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

میشه لطفا ی سمپل بزارید خیلی پیچیدس هرچی ساده تر بهتر

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

این لینک توتریال

http://www.b4x.com/android/forum/threads/downloadmanager-tutorial.22307/

این لینک خود لایبرری تو سایت اصلی:

http://www.b4x.com/android/forum/threads/downloadmanager.22306/

سمپل رو از لینک بالا میشه دانلود کرد اما محض اطمینان اینم لینک سمپل:

http://s5.picofile.com/file/8155105600/simple_example.zip.html

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

سلام، من توی یک اکتیویتی از دو متغیر httputils استفاده کردم و خروجی یکیشون httpjob هست و دیگری string، چطور میتونم تصمیم گیری برنامه رو مدیریت کنم؟ با select case موفق نشدم، Sub رو به اینصورت تعریف کردم Sub jobdone(job As HttpJob) As String ولی بازم نشد، بخاطر اینکه سورس شباهت بسیار زیادی با چند محصول فروشگاه داره نمیتونم بذارمش، مرسی از همگی

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

سلام، من توی یک اکتیویتی از دو متغیر httputils استفاده کردم و خروجی یکیشون httpjob هست و دیگری string، چطور میتونم تصمیم گیری برنامه رو مدیریت کنم؟ با select case موفق نشدم، Sub رو به اینصورت تعریف کردم Sub jobdone(job As HttpJob) As String ولی بازم نشد، بخاطر اینکه سورس شباهت بسیار زیادی با چند محصول فروشگاه داره نمیتونم بذارمش، مرسی از همگی

من این رو فهمیدم از سوال شما

شما دو تا متغیر دارید که نمی دونید چطوری در موردشون تصمیم گیری کنید که وقتی کدوم تموم بشه چی شه و وقتی اون یکی دیگه چی!

می آد در SUb JobDone این رو می نویسید :

If Job = "نام متغیر مورد نظر" Then

End If

If Job = "نام متغیر دیگه" Then

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

سلام، مرسی از جوابتون، احتمالاً درست توضیح ندادم؛

من دو/2 HTTPJOB دارم که یکیشون باید بهم job رو از نوع httpjob برگردونه و دیگری از نوع string...

من وقتی بی اهمیت کار رو انجام بدم بهم خطا میده که در انتخاب نوع آرگومان اشتباه کردم...

به کمک Case میشه چندین httpjob رو برگردونیم مشکلی نداره، اما اینکه نوع آرگومان فرق کنه اون موقع چی؟ من از این sub هم استفاده کردم اما جواب نداد: 

Sub jobdone(job As HttpJob) As String
.
.
.
End Sub
لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

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

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

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