Files
July/模板项目使用说明.md
2026-01-06 17:32:25 +08:00

4.3 KiB
Raw Blame History

模板项目使用说明

项目概述

这是一个 Android 模板项目已经配置好从启动页SplashActivity到主页面MainActivity的完整流程。

启动流程

1. SplashActivity启动页

位置: app/src/main/java/com/fenghoo/seven/main/activity/SplashActivity.java

功能:

  • 作为应用的启动入口LAUNCHER Activity
  • 显示启动画面,默认延迟 2 秒后跳转
  • 检查用户登录状态
  • 请求必要的应用权限

跳转逻辑:

if (已登录) {
    跳转到 MainActivity主页面
} else {
    跳转到 LoginPasswordActivity登录页
}

2. MainActivity主页面

位置: app/src/main/java/com/fenghoo/seven/main/activity/MainActivity.java

功能:

  • 应用的主界面
  • 包含底部导航栏(首页、发现、客户、我的等)
  • Fragment 管理

自定义配置

修改启动页延迟时间

SplashActivity.java 中修改常量:

/** 启动页延迟时间毫秒默认2秒 */
private static final long SPLASH_DELAY = 2000; // 修改这个值

修改需要请求的权限

SplashActivity.javarequestNecessaryPermissions() 方法中修改:

String[] perms = {
    Manifest.permission.WRITE_EXTERNAL_STORAGE,  // 存储权限
    Manifest.permission.CAMERA                    // 相机权限
    // 可以添加更多权限
};

修改跳转逻辑

SplashActivity.javastartMainActivity() 方法中自定义:

private void startMainActivity() {
    // 自定义跳转逻辑
    if (ProfileSpUtils.getInstance().isLogin()) {
        startActivity(MainActivity.class);
    } else {
        startActivity(LoginPasswordActivity.class);
    }
    finish();
}

AndroidManifest.xml 配置

启动页已正确配置为 LAUNCHER Activity

<activity
    android:name=".main.activity.SplashActivity"
    android:exported="true"
    android:screenOrientation="portrait"
    android:theme="@style/SplashTheme">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

启动页布局

位置: app/src/main/res/layout/activity_splash.xml

可以自定义启动页的 UI当前显示应用图标。

启动页主题

位置: app/src/main/res/values/styles.xml

查找 SplashTheme 样式,可以自定义启动页的主题。

测试启动流程

  1. 直接启动应用

    • 应用会自动从 SplashActivity 开始
    • 2 秒后根据登录状态跳转
  2. 已登录状态

    • 跳转到 MainActivity
  3. 未登录状态

    • 跳转到 LoginPasswordActivity

注意事项

  1. 返回键处理: 启动页已禁用返回键,防止用户在启动过程中退出应用

  2. 权限处理:

    • 如果权限被拒绝,应用仍会继续运行(延迟后跳转)
    • 可以根据需要修改权限拒绝后的处理逻辑
  3. 内存泄漏防护:

    • 使用 WeakReference 包装 Handler避免内存泄漏
  4. 登录状态检查:

    • 使用 ProfileSpUtils.getInstance().isLogin() 检查登录状态
    • 确保在登录成功后正确保存登录状态

快速开始

  1. 运行项目,应用会自动从 SplashActivity 启动
  2. 2 秒后根据登录状态自动跳转到相应页面
  3. 如需修改跳转逻辑,编辑 SplashActivity.javastartMainActivity() 方法

测试账号

登录页面已预设默认测试账号,方便开发测试:

  • 手机号: 18133922183
  • 密码: 123456

说明:

  • 打开登录页面时,如果输入框为空,会自动填入测试账号
  • 可以直接点击"登录"按钮进行测试
  • 如需修改测试账号,编辑 LoginPasswordActivity.javasetDefaultTestAccount() 方法
  • 生产环境发布前,建议删除或注释 setDefaultTestAccount() 方法调用

相关文件

  • SplashActivity.java - 启动页 Activity
  • MainActivity.java - 主页面 Activity
  • LoginPasswordActivity.java - 登录页 Activity
  • activity_splash.xml - 启动页布局
  • AndroidManifest.xml - Activity 配置

最后更新: 2025-01-06