آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

اشتراک گذاری فایل صوتی mp3 از پوشه raw

Reza.M  11 سال پیش  11 سال پیش
0 0

سلام و عرض ادب.
طاعاتتون مورد قبول حق.

تو اشتراک فایل از پوشه raw به مشکلی برخوردم ، از دوستان و اساتید میخوام لطف کنن و راهنمایی کنن...

اگر بخوام اصولی سوالمو بپرسم ، میگم میخوام فایل صوتی ای که تو پوشه raw هستش رو با share intent به اشتراک بذارم ، میخواستم بدونم چه راهی اصولیه؟
و اینکه امکانش هست بدون اینکه فایل تو sd کارت کپی بشه ، بطور مستقیم به اشتراک گذاشت یا نه؟

ببیند با همین کدی که پایین تر گذاشتم، لیست برنامه هایی که میتونن فایل رو به اشتراک بذارن رو میاره ، مثل بلوتوث و share it و ...
 اما وقتی روی برنامه ای که میخوام با اون اشتراک بذارم کلیک میکنم ، پیام میده unable to open file  ، ینی نمیتونه فایل رو باز کنه...

سپاسگزارم...

String filename = "item5.mp3";
Uri uri = Uri.parse("android.resource://ir.skydt.player/drawable/raw/" + filename); Intent share = new Intent(Intent.ACTION_SEND); share.setType("audio/*"); share.putExtra(Intent.EXTRA_STREAM, uri); G.currentActivity.startActivity(Intent.createChooser(share, "اشتراک از طریق :"));
0 0
سلام توی این لینک کامل توضیح داده شده لینک (11 سال پیش)
0 0
ممنون دوست عزیز، ولی کار نکرد :( (11 سال پیش)
0 0
این لینک رو چک کن رضا جان، در حال حاضر واقعا درگیرم و نمیرسم جواب دقیق بدم، ولی آزاد شدم حتما یک روش درست درمون براش پیدا میکنم و درج میکنم.(قبلا که اینکارو انجام داده بودم یادمه فایل رو بدون پسوند ارسال میکنه. اگر این مشکل رو داشتید کافیه پسوند رو به صورت دستی به filename اضافه کنید) لینک (11 سال پیش)
0 0
علی جان ممنون از وقتی که گذاشتی، راستش این لینکی که دادی رو قبلا چک کردم و انجام دادم ، و نتیجه این که ، بعد از اینکه مثلا روی یه برنام اشتراک گذاری مثل بلوتوث کلیک میکنم، یه Toast چاپ میشه با پیام " unable to open file for share " (11 سال پیش)
0 0
تست کردم، درسته فایل رو پیدا نمیکنه! کمی سرچ کردم و راه مناسبی پیدا نکردم، به نظرم بهترین راهی که میتونید استفاده کنید اینه که آهنگ ها رو توی Assets ذخیره کنید و وقتی کاربر خواست Play کنه آهنگ مورد نظر روی مموری کپی بشه، اینجوری هم میتونید توی لیست موزیک ها اضافش کنید، هم ارسالش راحته... تازه میتونید یک چک باکس توی برنامه قرار بدید که اگر تیک خورد موزیک هارو توی مدیاپلیر نشون نده(.nomedia)، یکی دیگه از قابلیت هاشم اینه که میتونید آهنگ هارو دونه دونه زیپ کنید و توی Asset قرار بدید. خودم تا حالا تست نکردم ولی میدونم که میشه آنزیپ کرد.(حتی پسوورد هم میشه گذاشت)، اینجوری هم حجم برنامتون کمتر میشه هم قابلیت های بالا رو دارید... Always A Catch (همیشه یه راهی هست) (11 سال پیش)
0 0
علی جان ممنون از راهنماییت. فقط یه لطفی میکنی یکم بیشتر توضیح بدی دقیقا چیکار کنم؟ ینی اول همه آهنگ هامو از پوشه raw حذف کنم و اونا رو زیپ کنم کلا تو پوشه assets بذارم؟ بعد موقع play کردن ، روی مموری کپی کنم؟ بعد اون تیکی که گفتی تو مدیاپلیر نشون نده رو چطوری بنویسمش؟ (11 سال پیش)
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
Hajhosseini  11 سال پیش
+1 0

رضا جان مرحله به مرحله برو جلو
1- آهنگ هارو از Raw به Assets منتقل کن (فعلا زیپ نکن)
2- دیتابیس بساز (شامل 2 فیلد : آیدی آهنگ و نام آهنگ)
3- توی کلاس G یا هر کلاسی (اگر من باشم یک MusicPlayerHelper میسازم) یک فولدر توی Sd_Card بساز (مثلا به نام myappname_musics)
4- برای نمایش لیست موزیک ها (توی لیست ویو) فقط کافیه از دیتابیس نام و آیدی رو بخونی و توی آداپترت ست کنی(میتونه آیکن هم داشته باشه)
5- وقتی روی دکمه play کلیک شد، باید ببینی نام فایل توی اون فولدره که درست کردی وجود داره یا نه(myappname_musics)
- اگر وجود نداشت از Assets فایل رو کپی کن توی اون فولدر، اگر وجود داشت هم play کن.
6- برای اینکه اون آهنگ ها توی موزیک پلیر ها نمایش داده نشن میتونی یک فایل به نام .nomedia توی اون فولدر قرار بدی.
7- همه این کارها رو که کردی و درست کار کرد، یک کلاس بساز که فایل زیپ رو اکسترکت کنه(اگر میخوای زیپ کنی)
- بعد همه آهنگ هارو دونه دونه زیپ کن و هرکدوم که نیاز داشتیو اول آنزیپ کن و بعد play کن
مزایا
1- این روش کاملا داینامیکه و برای اضافه و حذف آهنگ هیچ مشکلی نداری
2- حجم برنامه کمی کمتر میشه (ولی یادگیری استفاده از فایل زیپ در آینده میتونه خیلی بدردت بخوره)
3- اگر در آینده بخوای آهنگ های جدید رو از وب دانلود کنی بسیار ساده میتونی بگی اگر توی مموری وجود نداشت از وب دانلود کن
4- ارسال آهنگ ها از Assets بسیار راحت و بدون هیچ گونه دردسره
5- قابلیت اضافه کردن عکس به لیست ها، تایتل آهنگ، لیریکس و ...
6- میتونی یک Helper ازش بسازی و توی تمام پروژه هات ازش استفاده کنی
موفق باشی ;)

+1 0
قربون داداش ... علی جون دمت گرم ، هم کامل بود هم جامع (: ... البته چندتا از مرحله ها رو رفتم ، مونده ارسال آهنگ و زیپ و انزیپ ش... به هرحال باس بگم ، خیلی خیلی لطف کردی. (11 سال پیش)
+1 0
رضا جان یک helper تمیز و داینامیک از توش در بیار اینجا درج کن که دوستان هم بتونن استفاده کنن. (11 سال پیش)
+1 0
یه تاپیک میزنم دوست عزیز با کد و فایل پروژ من قبلا اینکارو انجام دادم (11 سال پیش)
0 0
diligenceman جان ، منتظر پاسخ ت هستم... (11 سال پیش)
0 0
لینک (11 سال پیش)
0 0
لینک (11 سال پیش)

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