Tôi đang sử dụng SDK Java cho Android Publisher v2
và Oauth2 v2
. Khi tôi tạo tài khoản dịch vụ, tôi đã được cung cấp JSON của Google Play Android Developer
tài khoản dịch vụ có id ứng dụng, email, khóa cá nhân, v.v. Tôi đã cố gắng xem xét và tìm hiểu cách tạo Thông tin đăng nhập để tôi sử dụng dịch vụ AndoirdPublisher để tìm nạp thông tin về đăng ký người dùng ứng dụng Android của tôi, quyền lợi vv và lưu trữ thông tin này trên các máy chủ phụ trợ của chúng tôi.HOWTO tạo GoogleCredential bằng cách sử dụng Tài khoản dịch vụ JSON
Tôi đang gặp khó khăn khi cố gắng tìm ra cách để thực hiện việc này. Không có tài liệu nào tôi đã thấy cho đến nay giúp tạo ra GoogleCredential
bằng cách sử dụng JSON đã tải xuống.
Ví dụ: đây là documentation nhưng nó chỉ đề cập đến tệp P12 chứ không phải JSON. Tôi muốn tránh P12 nếu có thể vì tôi có nhiều khách hàng & Tôi muốn lưu JSON này trong một số loại cơ sở dữ liệu & sau đó sử dụng nó để tạo thông tin xác thực cho từng khách hàng.
Chỉ cần làm rõ tôi đang cố gắng để tạo ra các đối tượng GoogleCredential như mô tả ở đây,
import com.google.api.client.googleapis.auth.oauth2.GoogleCredential;
import com.google.api.client.googleapis.javanet.GoogleNetHttpTransport;
import com.google.api.client.http.HttpTransport;
import com.google.api.client.json.JsonFactory;
import com.google.api.client.json.jackson2.JacksonFactory;
import com.google.api.services.sqladmin.SQLAdminScopes;
// ...
String emailAddress = "[email protected]";
JsonFactory JSON_FACTORY = JacksonFactory.getDefaultInstance();
HttpTransport httpTransport = GoogleNetHttpTransport.newTrustedTransport();
GoogleCredential credential = new GoogleCredential.Builder()
.setTransport(httpTransport)
.setJsonFactory(JSON_FACTORY)
.setServiceAccountId(emailAddress)
.setServiceAccountPrivateKeyFromP12File(new File("MyProject.p12"))
.setServiceAccountScopes(Collections.singleton(SQLAdminScopes.SQLSERVICE_ADMIN))
.build();
Nhưng thay vì thiết lập các tài khoản dịch vụ sử dụng P12 tập tin như vậy setServiceAccountPrivateKeyFromP12File()
, tôi muốn sử dụng JSON mang cùng thông tin & được tạo khi tôi tạo tài khoản dịch vụ.
Không hoàn toàn chắc chắn những gì bạn đang yêu cầu, nhưng trước tiên bạn nên thực hiện theo các bước được liệt kê [tại đây] (https://developers.google.com/android-publisher/getting_started#using_a_service_account). Nó sẽ cho bạn biết làm thế nào để tạo một tài khoản dịch vụ nếu bạn muốn sử dụng nó. Để đảm bảo bạn có thể thực sự kéo thông tin cần kiểm tra, hãy bật API nhà phát triển Android trên Google Play, liên kết dự án của bạn với tài khoản xuất bản Google Play và cấp các quyền cần thiết cho tài khoản dịch vụ của bạn trong bảng điều khiển Cửa hàng Google Play. – Andy
@Andy Cảm ơn. Vâng, tôi đã tạo một tài khoản dịch vụ và muốn sử dụng JSON đã được tạo cho nó (thay vì tệp P12) để tạo đối tượng GoogleCredential. – Chantz
@Andy Tôi đã cập nhật câu hỏi để cung cấp thêm thông tin. – Chantz