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

ارور هنگام استفاده از سرویس httputlis2services بجای کتابخانه httputlis2

سوال

YareGomnam    86

سلام خدمت سروران گرامی

هنگام استفاده از سرویس  httputlis2services  بجای کتابخانه httputlis2 با ارور مواجه میشم اما وقتی سرویس رو حذف میکنم و کتابخونه رو اد میکنم دیگه ارور نمیده ، نمیخوام از کتابخونه استفاده کنم ، ممنون میشم راهنمایی کنید ، متن ارور :

** Activity (main) Resume **
** Activity (main) Pause, UserClosed = false **
** Activity (register) Create, isFirst = true **
** Activity (register) Resume **
*** Service (httputils2service) Create ***
** Service (httputils2service) Start **
Error occurred on line: 44 (HttpUtils2Service)
java.lang.ClassCastException: java.lang.Object cannot be cast to madresehefzquran.newt.downloadservice$_jobtag
    at madresehefzquran.newt.httputils2service._hc_responsesuccess(httputils2service.java:214)
    at java.lang.reflect.Method.invoke(Native Method)
    at anywheresoftware.b4a.shell.Shell.runMethod(Shell.java:732)
    at anywheresoftware.b4a.shell.Shell.raiseEventImpl(Shell.java:348)
    at anywheresoftware.b4a.shell.Shell.raiseEvent(Shell.java:255)
    at java.lang.reflect.Method.invoke(Native Method)
    at anywheresoftware.b4a.ShellBA.raiseEvent2(ShellBA.java:144)
    at anywheresoftware.b4a.BA$2.run(BA.java:387)
    at android.os.Handler.handleCallback(Handler.java:883)
    at android.os.Handler.dispatchMessage(Handler.java:100)
    at android.os.Looper.loop(Looper.java:237)
    at android.app.ActivityThread.main(ActivityThread.java:7948)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1075)

 

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

محتوای سرویس httputlis2services :

#Region Module Attributes
	#StartAtBoot: False
#End Region

'Modified version of HttpUtils2
'Service module
Sub Process_Globals
	Private hc As OkHttpClient
	Private TaskIdToJob As Map
	Public TempFolder As String
	Private taskCounter As Int
End Sub

Sub Service_Create
	TempFolder = File.DirInternalCache
	hc.Initialize("hc")
	TaskIdToJob.Initialize
End Sub

Sub Service_Start (StartingIntent As Intent)
	
End Sub

Sub Service_Destroy

End Sub

Public Sub SubmitJob(job As HttpJob) As Int
	taskCounter = taskCounter + 1
	TaskIdToJob.Put(taskCounter, job)
	If job.Username <> "" And job.Password <> "" Then
		hc.ExecuteCredentials(job.GetRequest, taskCounter, job.Username, job.Password)
	Else
		hc.Execute(job.GetRequest, taskCounter)
	End If
	Return taskCounter
End Sub

Sub hc_ResponseSuccess (Response As OkHttpResponse, TaskId As Int)
	' ********** Modified code *************
	Dim cs As CountingOutputStream
	cs.Initialize(File.OpenOutput(TempFolder, TaskId, False))
	Dim j As HttpJob = TaskIdToJob.Get(TaskId)
	Dim jt As JobTag = j.Tag
	jt.CountingStream = cs
	jt.Total = Response.ContentLength
	If jt.Data.url = "" Then
		Log("Job cancelled before downloaded started")
		cs.Close
	End If
	Response.GetAsynchronously("response", cs , _
		True, TaskId)
	'**************************************
End Sub

Sub Response_StreamFinish (Success As Boolean, TaskId As Int)
	If Success Then
		CompleteJob(TaskId, Success, "")
	Else
		CompleteJob(TaskId, Success, LastException.Message)
	End If
End Sub

Sub hc_ResponseError (Response As OkHttpResponse, Reason As String, StatusCode As Int, TaskId As Int)
	If Response <> Null Then
		Log(Response.ErrorResponse)
		Response.Release
	End If
	CompleteJob(TaskId, False, Reason)
End Sub

Sub CompleteJob(TaskId As Int, success As Boolean, errorMessage As String)
	Dim job As HttpJob
	job = TaskIdToJob.Get(TaskId)
	TaskIdToJob.Remove(TaskId)
	job.success = success
	job.errorMessage = errorMessage
	job.Complete(TaskId)
End Sub

 

 

دیباگ که میگیرم خط زیر رو ارور میگیره :

    Dim jt As JobTag = j.Tag

خط بالا توی سرویس بالا ، توی ساب Sub hc_ResponseSuccess (Response As OkHttpResponse, TaskId As Int) قرار داره

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


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

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 قرار دهید.


×
×
  • جدید...