بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

setDataSource(path);

مدیریت گفتگو
apriliyaa 11 سال پیش
آخرین تغییر: 10 سال پیش

سلام بزرگواران

با فرض اینکه پلیر ما که فایل های mp3 رو پخش می کنه و فایل هاش روی سرور اینترنتی با لینک مستقیم هست و البته آدرس اون فایل اینترنتی داخل یکی از ستون های دیتابیس sqlite هست، این آدرس جهت پخش باید با چه دستوری از دیتابیس فراخونی بشه و دکمه ی play اقدام به پخشش کنه ؟

من تا این لحظه به این کد رسیدم :

 @Override
	public void onClick(View view) {
		btn_play.setText(dastan.getEzafi());
		
		MediaPlayer mediaPlayer = new MediaPlayer();
		mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);

که تا این لحظه لینک رو از داخل دیتابیس بر می داره اما به جای پخش وقتی رو دکمه ی play کلیک میشه لینک نشون داده میشه به جای اینکه پخش بشه  !

نظرات

کاشی زاده 11 سال پیش
شما قصد دارید که فایل Mp3 رو از سرور پخش کنید ؟
apriliyaa 11 سال پیش
سلام بله می تونم پخش کنم اما نه اونجوری که مد نظرمه من دوست دارم برنامه لینک mp3 رو از دیتابیس بگیره و پخش کنه
کاشی زاده 11 سال پیش
خب الان مشکل کار کجا هست ؟ شما آدرس رو از دیتابیس میکشید بیرون تبدیلش میکنید به URI میدید به مدیا پلیر
apriliyaa 11 سال پیش
بله آدرس url از دیتابیس کشیده میشه بیرون (وقتی دکمه ی play رو می زنیم) اما به جای اینکه اقدام به پخش کنه میاد آدرسی رو که در دیتابیس ذخیره شده رو نشون میده تو صفحه به جای اینکه پخشش کنه ! من می خوام اقدام به خوندن آهنگ کنه اینو ببنید: btn_play.setText(dastan.getEzafi()); با این کد من می گم که وقتی دکمه ای با نام play_btn زنده شد بره آدرس رو از همون ستون مخصوص برداره و بیاره و چون setText به کار بردم میاد آدرس رو به صورت text نشون میده که نمی خوام این کار انجام بشه و دقیقا بلد نیستم که به جای setText چی بزارم که آهنگ رو بخونه احتیاج به کدی دارم که وقتی رو دکمه کلیک شد به جای نمایش تکست و یا مثلا نشون دادن عکس، اقدام به پخش شدن آهنگ بشه پیشاپیش سپاس
کاشی زاده 11 سال پیش
عرض کردم شما باید به مدیا پلیرتون URI بدید ، آدرستون رو به URI تبدیل کنید.
apriliyaa 11 سال پیش
ممنون ممکنه مثالی بزنید یا تکه کدی رو معرفی کنید دقیقا همینکاری که گفتید رو نمی تونم انجام بدم

پاسخ‌ها 6

apriliyaa 11 سال پیش

دوستان نظری ندارید؟

نظرات

Sajad HP 11 سال پیش
پیشنهاد میکنم از کتابخانه های پخش مدیا استفاده کنید مثل : vitamio
Sajad HP 11 سال پیش

 btn_play.setText(dastan.getEzafi());

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

نظرات

apriliyaa 11 سال پیش

برادر ضمن تشکر ، می دونم همون اصلاح رو منظورم اینه که چی کار باید کنم 

 

نظرات

apriliyaa 11 سال پیش

ببنید طبق سرچ هایی که انجام دادم از یه سرور آنلاین رو اینجوری می گیره (پلیر برای پخش) :

 player.setDataSource("http://213.73.255.244:10700");

از یه آدرس اینترنتی (یک فایل ) رو با این دستور می گیره :

 String url ="http://fresong.org/play-music/Amin-Habibi-Dishab-Hamin-Moghee.mp3"; 
 mPlayer.setDataSource(url);

اما اگر ما همون آدرس لینک رو در دیتابیس ذخیره داشته باشیم چه جوری باید برای دکمه ی play فراخونیش کرد؟

نظرات

هادی بی غم 11 سال پیش

سلام

این کد رو برای زمانی که روی دکمه پخش کلیک میشه بذار و به جای URI متغییر یا همون لینکی که آدرس فایل هست بهش بده

 mPlayer = new MediaPlayer();
mPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
try {
mPlayer.setDataSource(URI);

}
catch (IllegalArgumentException e1) {
e1.printStackTrace();
}
catch (IllegalStateException e1) {
e1.printStackTrace();
}
catch (IOException e1) {
e1.printStackTrace();
}

try {
mPlayer.prepare();
}
catch (IllegalStateException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
mPlayer.start();

نظرات

apriliyaa 11 سال پیش

آدرس URI رو داخل دیتابیس sqlite دارم و می خوام از اونجا فراخونی کنم 

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

نظرات

هادی بی غم 11 سال پیش
شما مگه آموزش های استاد رو نگاه نمی کنید ؟ پروژه Note یا مارکت این کارو خیلی کامل آموزش داده
apriliyaa 11 سال پیش
لینک می کنید نیافتم
کاشی زاده 11 سال پیش
این آموزش فقط در دسترس کاربران ویژه هست و شما باید ابتدا عضو ویژه سایت بشید تا بتوانید از این آموزش ها به صورت کامل استفاده کنید.
apriliyaa 11 سال پیش
یه توضیح سطحی در موردش می دید
کاشی زاده 11 سال پیش
ببیند مشکل شما این هست که با مقدمات برنامه نویسی آشنا نیستید و اگر من توضیح بدم بیشتر سردرگم خواهید شد .
apriliyaa 10 سال پیش
تشکر به قول معروف شما سرنخ بدید من تا تهشو میرم
کاشی زاده 10 سال پیش
همونطور که عرض کردم مشکل شما عدم دانش کافی در رابطه با اساس برنامه نویسی هست ، به نظر من قبل از هرچیز بهترین کار مطالعه آموزش های سایت هست ، در غیر این صورت زمان زیادی برای دانش کمی که از راه های دیگر بدست خواهید آورد هزینه میکنید.

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .