هل من ناصر ینصرنی؟؟؟!! خطای java.lang.RuntimeException: Object should first be initialized (Cursor). موقع کامپایل

سوال

خطای
java.lang.RuntimeException: Object should first be initialized (Cursor)
دلیلش چی هست؟؟ لطفا راه حلش رو ارائه بفرمائید. تشکر
من میخوام فایل های صوتی برنامم رو با کلیک روی هر کدام از عناوین مخصوص به خودشون پخش کنم. همه راه حل ها برای اجرای یک فایل صوتی هست ولی بنده چندین فایل صوتی دارم که باید در لیست ویو، به ترتیب اجرا بشند.
این صفحه ای که قراره صداها اجرا بشند. ببینید اشکال کار کجاست لطفا 🙂

#Region Activity Attributes
#FullScreen: False
#IncludeTitle: false
#End Region
Sub Process_Globals
Dim MediaPlayer As SimpleExoPlayer
Dim timer2 As Timer
End Sub
Sub Globals
Dim Button1 As Button
Dim Button2 As Button
Dim SeekBar As SeekBar
Dim barVolume As SeekBar
Dim lbltime As Label
Dim ListView1 As ListView
Dim fara As Farakhani
End Sub
Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("Layout2")
If FirstTime Then
timer2.Initialize("timer2",500)
timer2.Enabled=True
End If
Main.cursor=Main.sql.ExecQuery("SELECT * FROM Fehrest")
For i=0 To Main.cursor.RowCount-1
Main.cursor.Position=i
ListView1.AddSingleLine(Main.cursor.GetString("Soorehha_1"))
Next
Main.cursor.Close
fara.initialize("data.db","Fehrest",True)
MediaPlayer.Initialize("MediaPlayer")
End Sub
Sub Activity_Resume
MediaPlayer.Play
End Sub
Sub Activity_Pause (UserClosed As Boolean)
MediaPlayer.Pause
End Sub
SeekBar.Value=MediaPlayer.Position/MediaPlayer.Duration*100
lbltime.Text=ConvertToTimeFormat(MediaPlayer.Position)
End Sub
Sub ConvertToTimeFormat(ms As Int) As String
Dim seconds, minutes As Int
seconds = Round(ms/1000)
minutes = Floor(seconds/60)
seconds = seconds Mod 60
Return NumberFormat(minutes,1,0)&":"&NumberFormat(seconds,2,0)'ex: 3:05
End Sub
Sub barVolume_ValueChanged (value As Int, UserChanged As Boolean)
End Sub
Sub SeekBar_ValueChanged (value As Int, UserChanged As Boolean)
If UserChanged Then MediaPlayer.Position = value/100*MediaPlayer.Duration'the value was changed programmatically
timer2_Tick 'immediately update the progress label
End Sub
Sub Looping_CheckedChange(Checked As Boolean)
End Sub
Sub Button1_Click
Log("پخش انتخاب شد")
MediaPlayer.Play
timer2_Tick 'immediately update the progress label
End Sub
Sub Button2_Click
Log("توقف انتخاب شد")
MediaPlayer.Pause
End Sub
Sub ListView1_ItemClick (Position As Int, value As Object)
Log("position:"&Position&"-value:"&value)
Dim Soorehha As String
Dim Seda As String
Soorehha = fara.FarakhaniString("ID",Soorehha,"Soorehha_1")
Seda = fara.FarakhaniString("ID",Seda,"Seda_1")
MediaPlayer.CreateFileSource(File.DirAssets,Seda)
MediaPlayer.Play
End Sub

 

در حال بررسی 0
2018-06-23T15:49:25+03:30 3 پاسخ کاربر تازه 0

پاسخ ها ( 3 )

    1
    2018-06-24T08:59:42+03:30

    سلام

    در لینک زیر آموزش کار با Mediaplayer را قرار دادیم که میتونید مطالعه کنید:

    آموزش برنامه نویسی اندروید با B4A – قسمت دوازدهم(کار با MediaPlayer)

    در آموزش بالا یک فایل صوتی را پخش کردیم، ولی اگه میخواید چند فایل صوتی پخش کنید به صورت زیر عمل کنید:

    • ابتدا که یک متغیر از نوع MediaPlayear تعریف میکنیم، برای مثال:
    Dim mp As MediaPlayer
    • سپس در Activity_Create میایم و Initialize میکنیم:
    mp.Initialize2("mp")

    حالا هر چند تا آهنگ که دارید؛ به همون اندازه چند تا دکمه ایجاد کنید و بری هر دکمه کد زیر رو بنویسید:

    mp.Load(File.DirAssets,"beporam.wav")

    آهنگی با پسوند و نام beporsam.wav در پوشه Files برنامه کپی کردیم.

    حالا شما برای مثال 10 تا آهنگ دارید، 10 تا هم دکمه ایجاد میکنید، توی رویداد کلیک هر دکمه کد بالا رو بنویسید، با این تفاوت که نام آهنگ + پسوند رو باید عوض کنید.

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

    موفق باشید.

    0
    2018-06-25T10:41:36+03:30

    سلام” خیلی ممنون که پاسخ دادین. اما من همه عناوین صدا (100 عنوان)رو از داخل دیتابیس فراخوان کردم و در لیست ویو به نمایش دراومده. پس دکمه ای در کار نیست. در این مورد چه نظری دارید؟ 🙂
    آیا می شه در یک خط کد مشخص کنیم فلان صوت برای چه عنوانی هست و فقط همون رو اجرا کنه؟؟

    0
    2018-06-27T09:42:50+03:30

    قبلا در سایت پاسخ داده شده؛ سورس موجود در پرسش زیر را دانلود و بررسی کنید.

    متن همراه با صوت در بیسیک فور اندروید

      0
      2018-06-27T17:34:11+03:30
      این پاسخ ویرایش شد.

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

        0
        2018-06-28T06:29:05+03:30

        دوست عزیز همون سورسی که خدمتتون دادم رو بررسی کنید …

        طبق سورس، کدها رو به پروژتون اضافه کنید

          0
          2018-06-28T11:49:30+03:30

          همه رقم امتحان کردم نشد. من 0 کیلومترم آخه. همینم با مکافات رسیده به اینجا 🙁

ارسال یک پاسخ