You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用AWS SAM、TypeScript构建原生Android应用?求搭建部署入门指引

AWS SAM + Node.js/TypeScript 后端搭建、测试、部署指引

一、仓库搭建

  • 先安装AWS SAM CLI和Node.js(16+版本),然后初始化SAM项目:
    sam init --runtime nodejs18.x --app-template hello-world --name android-backend --package-type Zip
    
    初始化过程中选择TypeScript作为开发语言(SAM原生支持TS模板选项)。
  • 调整项目结构:
    • 将TS源码放在src/目录,编译后的JS输出到dist/
    • 修改template.yml中Lambda函数的CodeUri为dist/,确保SAM能识别编译后的代码
  • 配置TS编译:
    • 在package.json中添加build脚本:"build": "tsc"
    • 编辑tsconfig.json,设置outDir: "./dist"、target: "es2020"(匹配Node.js 18的支持版本)
  • 仓库管理:
    • 若和Android代码同仓,根目录存放后端代码,Android代码放在android/子目录
    • 配置.gitignore,包含node_modules/、dist/、Android的build/等目录

二、本地测试

  • 测试Lambda函数:
    先编译TS代码:npm run build,然后单独调用函数:
    sam local invoke HelloWorldFunction --event events/event.json
    
    event.json可自定义请求参数,模拟Android端的请求格式
  • 启动本地API网关:
    sam local start-api
    
    用curl测试端点:curl http://localhost:3000/hello
  • Android端本地联调:
    用adb端口转发让模拟器访问本地API:adb reverse tcp:3000 tcp:3000,之后Android代码中请求http://localhost:3000/hello即可
  • 单元测试:
    用Jest编写TS单元测试,覆盖Lambda的业务逻辑(比如参数校验、响应生成),运行测试:npm test

三、部署到AWS

  • 准备S3桶:先在AWS控制台或用CLI创建一个S3桶(用于存放SAM打包后的代码)
  • 打包项目:
    sam package --output-template-file packaged.yml --s3-bucket YOUR_BUCKET_NAME
    
  • 部署栈:
    sam deploy --template-file packaged.yml --stack-name android-backend-stack --capabilities CAPABILITY_IAM
    
    部署完成后,控制台会输出API Gateway的访问域名
  • 配置Android端:把线上API域名替换到Android代码的请求地址中,比如https://xxxxxx.execute-api.us-east-1.amazonaws.com/Prod/hello
  • 验证部署:用Postman或curl调用线上API,确认响应正常后,测试Android端的线上访问

四、实用技巧

  • 环境变量管理:不要硬编码配置,用SAM的Parameters或AWS Secrets Manager管理敏感信息(比如数据库密钥),在Lambda中通过process.env读取
  • 日志调试:部署后用CloudWatch查看Lambda日志,命令:
    sam logs -n HelloWorldFunction --stack-name android-backend-stack --tail
    
  • CI/CD自动化:可以配置GitHub Actions,每次push到main分支自动执行build、测试、部署流程,减少手动操作

内容的提问来源于stack exchange,提问作者lowkeyhuman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 23:05:00