安卓备忘录APP开发,文章末尾有源码和apk安装包
目标用户: 普通安卓手机用户,需要一个简单易用的备忘录App来记录和管理日常事务。
主要功能:
用户注册: 用户可以创建一个账号,输入用户名和密码。
用户登录: 用户可以通过用户名和密码登录到应用。
用户信息存储: 用户名和密码存储在SQLite数据库中。
登录状态管理: 用户登录后保持会话状态,直至用户登出或应用重启。
创建备忘录: 用户可以创建新的备忘录,输入标题和内容。
编辑备忘录: 用户可以编辑已有的备忘录。
删除备忘录: 用户可以删除不再需要的备忘录。
查看备忘录: 用户可以查看所有创建的备忘录。
搜索备忘录: 用户可以通过关键词搜索备忘录。
分类管理: 用户可以对备忘录进行分类管理。
备份和恢复: 用户可以备份备忘录数据并在需要时恢复
项目目录结构
MemorandumApp/
├── src/
│ ├── com.example.memorandum/
│ │ ├── MainActivity.java
│ │ ├── CreateMemoActivity.java
│ │ ├── EditMemoActivity.java
│ │ ├── LoginActivity.java
│ │ ├── RegisterActivity.java
│ │ ├── MemoDatabaseHelper.java
│ │ ├── Memo.java
│ │ ├── User.java
│ │ ├── SessionManager.java
├── res/
│ ├── layout/
│ │ ├── activity_main.xml
│ │ ├── activity_create_memo.xml
│ │ ├── activity_edit_memo.xml
│ │ ├── activity_login.xml
│ │ ├── activity_register.xml
│ ├── values/
│ │ ├── strings.xml
│ │ ├── styles.xml
├── AndroidManifest.xml
├── build.gradle
└── README.md
项目目录结构
1、 LoginActivity
// 初始化UI组件
initUIComponents();
// 设置登录按钮的点击事件
setLoginButtonListener();
// 验证用户并登录
validateUserAndLogin();
标题2. RegisterActivity
// 初始化UI组件
initUIComponents();
// 设置注册按钮的点击事件
setRegisterButtonListener();
// 将用户信息保存到数据库
saveUserToDatabase();
3. MainActivity
// 初始化UI组件
initUIComponents();
// 检查用户登录状态
checkLoginStatus();
// 从数据库加载备忘录列表
loadMemoList();
// 设置创建备忘录按钮的点击事件
setCreateMemoButtonListener();
// 设置搜索功能
setupSearchFunctionality();
4. SessionManager
// 保存登录状态
saveLoginStatus();
// 获取登录状态
getLoginStatus();
// 清除登录状态
clearLoginStatus();
在这里插入代码片
5. MemoDatabaseHelper
// 创建数据库和表
createDatabaseAndTables();
// 插入用户
insertUser(User user);
// 验证用户
validateUser(String username, String password);
// 插入备忘录
insertMemo(Memo memo);
// 更新备忘录
updateMemo(Memo memo);
// 删除备忘录
deleteMemo(int memoId);
// 获取所有备忘录
getAllMemos();
登陆
注册
事项增加
增加备忘录事项
以下是完整代码和apk:(后台可私聊)
1. LoginActivity.java
public class LoginActivity extends AppCompatActivity {
private EditText usernameEditText, passwordEditText;
private Button loginButton, registerButton;
private MemoDatabaseHelper dbHelper;
private SessionManager sessionManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
usernameEditText = findViewById(R.id.usernameEditText);
passwordEditText = findViewById(R.id.passwordEditText);
loginButton = findViewById(R.id.loginButton);
registerButton = findViewById(R.id.registerButton);
dbHelper = new MemoDatabaseHelper(this);
sessionManager = new SessionManager(this);
loginButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String username = usernameEditText.getText().toString();
String password = passwordEditText.getText().toString();
if (dbHelper.validateUser(username, password)) {
sessionManager.saveLoginStatus(true);
startActivity(new Intent(LoginActivity.this, MainActivity.class));
finish();
} else {
Toast.makeText(LoginActivity.this, "Invalid username or password", Toast.LENGTH_SHORT).show();
}
}
});
registerButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(LoginActivity.this, RegisterActivity.class