رفتن به مطلب
انجمن اندروید ایران | آموزش برنامه نویسی اندروید و موبایل
  • android.png.1fab383bc8500cd93127cebc65b1dcab.png

پست های پیشنهاد شده

سلام دوستان...کسی کدی داره که بشه چند تا آهنگ گذاشتم داخل لیست وییو و هر کدوم انتخاب کردی میخونه هر کدومو انتخاب کردی بره برای صدای زنگ؟؟؟؟؟خواهشا جواب بدید خیلی مهمه.....ینی میخوام ringtone با لیست ویو انتخاب کنم....آهنگها در پوشه rawهستند....

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

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

مثلا گوشی من هواوی است، ارور داد، مدل گوشی دیگر یعنی سامسونگ نست کردم، دیدم بدون هیچ اروری کار کرده

نفهیدم که چرا فرق می کنه؟؟

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

کدوم کد؟ینی کسی نمیدونه چطو یه آهنگ از پوشه raw برایصدای زنگ انتخابکنم و دفه های بعد اگه انتخابش کردم چون قبلا انتخاب بود دوباره توی زنگهای تلفن اسمش تکرار نشه

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

برای جلوی گیری از انتخاب تکرار و یا خطا از try catch .... استفاده کن

این کد می گیم

[shcode=java]

File k = new File(path, "mysong.mp3"); // path is a file to /sdcard/media/ringtone

ContentValues values = new ContentValues();

values.put(MediaStore.MediaColumns.DATA, k.getAbsolutePath());

values.put(MediaStore.MediaColumns.TITLE, "My Song title");

values.put(MediaStore.MediaColumns.SIZE, 215454);

values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/mp3");

values.put(MediaStore.Audio.Media.ARTIST, "Madonna");

values.put(MediaStore.Audio.Media.DURATION, 230);

values.put(MediaStore.Audio.Media.IS_RINGTONE, true);

values.put(MediaStore.Audio.Media.IS_NOTIFICATION, false);

values.put(MediaStore.Audio.Media.IS_ALARM, false);

values.put(MediaStore.Audio.Media.IS_MUSIC, false);

//Insert it into the database

Uri uri = MediaStore.Audio.Media.getContentUriForPath(k.getAbsolutePath());

Uri newUri = main.getContentResolver().insert(uri, values);

RingtoneManager.setActualDefaultRingtoneUri(

myActivity,

RingtoneManager.TYPE_RINGTONE,

newUri

);

[/shcode]

اگر فراخوانی از Raw باشه، این کد باید استفاده کنی

[shcode=java]

byte[] buffer = null;

            InputStream fIn = getBaseContext().getResources().openRawResource(

                    R.raw.zang1);

            int size = 0;

            try {

                size = fIn.available();

                buffer = new byte;

                fIn.read(buffer);

                fIn.close();

            } catch (IOException e) {

                return false;

            }

            String path = Environment.getExternalStorageDirectory().getPath()

                    + "/media/audio/ringtones/";

            String filename = "zang1.mp3";

            boolean exists = (new File(path)).exists();

            if (!exists) {

                new File(path).mkdirs();

            }

            FileOutputStream save;

            try {

                save = new FileOutputStream(path + filename);

                save.write(buffer);

                save.flush();

                save.close();

            } catch (FileNotFoundException e) {

                return false;

            } catch (IOException e) {

                return false;

            }

            sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE,

                    Uri.parse("file://" + path + filename)));

            File k = new File(path, filename);

            ContentValues values = new ContentValues();

            values.put(MediaStore.MediaColumns.DATA, k.getAbsolutePath());

            values.put(MediaStore.MediaColumns.TITLE, filename);

            values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/mp3");

            // This method allows to change Notification and Alarm tone also. Just

            // pass corresponding type as parameter

            if (RingtoneManager.TYPE_RINGTONE == type) {

                values.put(MediaStore.Audio.Media.IS_RINGTONE, true);

            } else if (RingtoneManager.TYPE_NOTIFICATION == type) {

                values.put(MediaStore.Audio.Media.IS_NOTIFICATION, true);

            } else if (RingtoneManager.TYPE_ALARM == type) {

                values.put(MediaStore.Audio.Media.IS_ALARM, true);

            }

            Uri uri = MediaStore.Audio.Media.getContentUriForPath(k

                    .getAbsolutePath());

            Uri newUri = Zang.this.getContentResolver().insert(uri, values);

            RingtoneManager.setActualDefaultRingtoneUri(Zang.this, type,

                    newUri);

            // Insert it into the database

            this.getContentResolver()

                    .insert(MediaStore.Audio.Media.getContentUriForPath(k

                            .getAbsolutePath()), values);

            return true;

[/shcode]

لینک ارسال
به اشتراک گذاری در سایت های دیگر
  • 2 ماه بعد...

سلام

من کد بالا رو کپی کردم و جاهایی که لازم بود رو تغییر دادم

ولی از دوتا چیز ایراد می گیره

return false

و

type

هر جا از اینا هست ایراد می گیره

؟؟؟؟

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

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...