Tạo mã ứng dụng Google (người quản lý làm 1 lần)
App chạy trên máy cần một mã ứng dụng Google (OAuth Client ID) thì mới đăng nhập Google và sửa được Google Sheets. Chỉ một người làm việc này một lần, mất khoảng 10 phút. Người trong team chỉ cần nhận file zip đã có sẵn mã.
Dùng tài khoản Google của bạn (hoặc của công ty) để làm các bước dưới.
Bước 1: Tạo dự án
- Mở https://console.cloud.google.com
- Ở góc trên bên trái, bấm ô chọn dự án → Dự án mới (New project).
- Đặt tên
Tinh tien seeding→ Tạo. Sau đó chọn đúng dự án vừa tạo.
Bước 2: Bật Google Sheets API
- Mở https://console.cloud.google.com/apis/library/sheets.googleapis.com
- Bấm Bật (Enable).
Bước 3: Màn hình xin quyền (Google Auth Platform)
- Mở https://console.cloud.google.com/auth/overview → Bắt đầu (Get started).
- Thông tin ứng dụng: tên
Tinh tien seeding, email hỗ trợ là email của bạn. - Đối tượng (Audience):
- Team dùng Gmail cá nhân: chọn Bên ngoài (External).
- Cả team dùng chung tên miền Google Workspace của công ty: chọn Nội bộ (Internal). Cách này không có cảnh báo "chưa xác minh" và không cần làm mục 5.
- Nhập email liên hệ, đồng ý điều khoản, rồi bấm Tạo.
- (Chỉ khi chọn External) Chọn một trong hai cách:
- Cách A, nên dùng: Xuất bản. Vào Đối tượng (Audience) → Xuất bản ứng dụng (Publish app) → xác nhận để chuyển sang Đang hoạt động (In production).
- Ứng dụng không cần gửi Google xác minh. Lần đầu đăng nhập, người dùng chỉ thấy cảnh báo "chưa xác minh", bấm Nâng cao → Đi tới Tinh tien seeding là xong. Giới hạn 100 người dùng.
- Đăng nhập một lần là dùng được lâu, không phải đăng nhập lại.
- Cách B: Để chế độ Thử nghiệm (Testing). Dùng khi chưa muốn xuất bản.
- Vào Đối tượng (Audience) → mục Người dùng thử (Test users) → Thêm người dùng (Add users).
- Nhập email Google của từng người trong team (tối đa 100), mỗi email một dòng → Lưu.
- Người không có trong danh sách sẽ bị Google chặn (
access_denied). Có người mới thì quay lại thêm email. - Ở chế độ này Google bắt mọi người đăng nhập lại sau mỗi 7 ngày. App sẽ tự hiện màn hình đăng nhập khi hết hạn. Muốn hết phải đăng nhập lại thì chuyển sang Cách A.
- Cách A, nên dùng: Xuất bản. Vào Đối tượng (Audience) → Xuất bản ứng dụng (Publish app) → xác nhận để chuyển sang Đang hoạt động (In production).
Bước 4: Tạo mã ứng dụng
- Mở https://console.cloud.google.com/auth/clients → Tạo ứng dụng khách (Create client).
- Loại ứng dụng: chọn Ứng dụng máy tính (Desktop app). Tên:
Tinh tien seeding→ Tạo. - Google hiện Client ID (dạng
1234...apps.googleusercontent.com) và Client secret (dạngGOCSPX-...). Giữ trang này mở.
Bước 5: Dán mã vào app
- Bấm đúp
start.cmd. Trình duyệt mở màn hình "Cài đặt lần đầu". - Dán Client ID và Client Secret → Lưu mã.
- Bấm Đăng nhập bằng Google để thử.
Mã được lưu ở config\google-oauth.json. Với loại "ứng dụng máy tính", Google cho phép đóng gói mã này kèm app gửi cho team. Mã chỉ dùng để xin đăng nhập: mỗi người vẫn phải tự đăng nhập và tự bấm "Cho phép" bằng tài khoản của họ.
Bước 6: Gửi cho team
Bấm đúp dong-goi-cho-team.cmd. App tạo file TinhTienSeeding-team.zip (đã có mã, không kèm đăng nhập Google của bạn). Gửi file này cho team, kèm HUONG-DAN-MAY-MOI.txt.
Lỗi hay gặp
| Thông báo | Cách sửa |
|---|---|
| "Google Sheets API chưa được bật" | Bấm link trong thông báo của app (mở đúng dự án), bấm Bật (Enable), đợi 1–2 phút rồi thử lại. Hoặc làm lại Bước 2 |
Google báo redirect_uri_mismatch | Mã đã tạo không phải loại Desktop app. Tạo mã mới đúng loại (Bước 4) |
Google báo access_denied hoặc "app chưa được Google duyệt" | Với External: xuất bản theo Cách A ở mục 5 Bước 3. Nếu vẫn để Testing (Cách B) thì thêm email người đó vào Người dùng thử (Test users) |
| Cứ 7 ngày phải đăng nhập lại | Ứng dụng đang ở chế độ Testing. Chuyển sang Cách A ở mục 5 Bước 3 |
| Muốn đổi mã | Xóa config\google-oauth.json, chạy lại start.cmd và nhập mã mới |