Khi tải source code sẽ được hỗ trợ cài đặt teamview chi tiết.Ứng dụng Nhạc chuông hot hit, trên android, giao diện đẹp
Ứng dụng phù hợp với các bạn làm đồ án và khoá luận hoặc mục đích kiếm tiền.
Giới Thiệu Ứng Dụng Nhạc Chuông
Tên Ứng Dụng: Ringtone Maker
Mục Đích
Ringtone Maker là ứng dụng giúp người dùng cắt, chỉnh sửa và cài đặt nhạc chuông từ các bài hát trong thư viện nhạc của họ. Ứng dụng này rất hữu ích để cá nhân hóa âm thanh chuông điện thoại theo sở thích.
Tính Năng Nổi Bật
-
Giao Diện Đẹp Mắt:
-
Thiết kế giao diện thu hút, dễ sử dụng với các biểu tượng rõ ràng, giúp người dùng thao tác dễ dàng.
-
Lựa Chọn Nhạc Từ Thư Viện:
-
Cho phép người dùng duyệt qua các bài hát có sẵn trên thiết bị và chọn bài hát để tạo nhạc chuông.
-
Cắt Nhạc Chuông:
-
Cung cấp công cụ để cắt đoạn nhạc thành nhạc chuông theo ý muốn, với khả năng chọn thời gian bắt đầu và kết thúc.
-
Nghe Trước Khi Cài Đặt:
-
Cho phép người dùng nghe thử đoạn nhạc đã cắt trước khi cài đặt nó làm nhạc chuông.
-
Cài Đặt Nhạc Chuông:
-
Cung cấp tùy chọn để cài đặt đoạn nhạc đã cắt làm nhạc chuông mặc định hoặc cho từng liên hệ cụ thể.
Cấu Trúc Mã Nguồn
1. Thư Mục Chính
-
src/: Chứa mã nguồn chính của ứng dụng.
-
res/: Chứa tài nguyên như hình ảnh, bố cục XML, và chuỗi.
-
AndroidManifest.xml: Tệp cấu hình cho ứng dụng.
2. Các Lớp Chính
-
MainActivity.java: Lớp điều khiển chính, hiển thị giao diện và xử lý logic.
package com.example.ringtonemaker;
import android.content.Intent;
import android.database.Cursor;
import android.media.RingtoneManager;
import android.net.Uri;
import android.os.Bundle;
import android.provider.MediaStore;
import android.view.View;
import android.widget.Button;
import android.widget.ListView;
import androidx.appcompat.app.AppCompatActivity;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
private static final int REQUEST_CODE_PICK_SONG = 1;
private ListView listView;
private RingtoneAdapter adapter;
private ArrayList<Song> songs;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = findViewById(R.id.listView);
Button pickSongButton = findViewById(R.id.pickSongButton);
songs = new ArrayList<>();
adapter = new RingtoneAdapter(this, songs);
listView.setAdapter(adapter);
pickSongButton.setOnClickListener(v -> pickSong());
}
private void pickSong() {
Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Audio.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, REQUEST_CODE_PICK_SONG);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == REQUEST_CODE_PICK_SONG && resultCode == RESULT_OK) {
Uri songUri = data.getData();
String[] proj = { MediaStore.Audio.Media.DATA };
Cursor cursor = getContentResolver().query(songUri, proj, null, null, null);
if (cursor != null) {
cursor.moveToFirst();
String filePath = cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.DATA));
songs.add(new Song(filePath, songUri.toString()));
adapter.notifyDataSetChanged();
cursor.close();
}
}
}
}
-
RingtoneAdapter.java: Lớp để xử lý danh sách nhạc chuông.
package com.example.ringtonemaker;
import android.content.Context;
import android.media.RingtoneManager;
import android.net.Uri;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;
import java.util.ArrayList;
public class RingtoneAdapter extends ArrayAdapter<Song> {
public RingtoneAdapter(Context context, ArrayList<Song> songs) {
super(context, 0, songs);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
Song song = getItem(position);
if (convertView == null) {
convertView = LayoutInflater.from(getContext()).inflate(android.R.layout.simple_list_item_2, parent, false);
}
TextView titleTextView = convertView.findViewById(android.R.id.text1);
titleTextView.setText(song.getTitle());
convertView.setOnClickListener(v -> {
try {
Uri ringtoneUri = Uri.parse(song.getUri());
RingtoneManager.setActualDefaultRingtoneUri(getContext(), RingtoneManager.TYPE_RINGTONE, ringtoneUri);
} catch (Exception e) {
e.printStackTrace();
}
});
return convertView;
}
}
-
activity_main.xml: Bố cục giao diện chính.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="16dp">
<Button
android:id="@+id/pickSongButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Chọn Nhạc Chuông"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />
<ListView
android:id="@+id/listView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/pickSongButton"
android:layout_marginTop="16dp"/>
</RelativeLayout>
Hướng Dẫn Sử DỤng
-
Khởi Động Ứng Dụng:
-
Mở ứng dụng và nhấn nút "Chọn Nhạc Chuông".
-
Chọn Bài Hát:
-
Duyệt qua thư viện nhạc và chọn bài hát bạn muốn sử dụng làm nhạc chuông.
-
Cài Đặt Nhạc Chuông:
-
Nhấn vào bài hát trong danh sách để cài đặt nó làm nhạc chuông.
Kết Luận
Ringtone Maker là một ứng dụng dễ sử dụng và rất hữu ích giúp người dùng tạo và cài đặt nhạc chuông theo sở thích. Với mã nguồn đã cung cấp, bạn có thể dễ dàng phát triển và mở rộng ứng dụng cho các tính năng cao cấp hơn.
Sharecode
Code đồ án
Share code
XEM THÊM ==> Hướng dẫn cài đặt chi tiết
Nguồn: Sharecode.vn
Khi tải source code sẽ được hỗ trợ cài đặt teamview chi tiết.nếu bạn mua mà có gì thắc mắc hoặc cần trợ giúp có thể liên hệ qua mail