Google Backup: Nhiều thiết bị sử dụng cùng một tài khoản - điều gì xảy ra trên Khôi phục?


54

Không có gì mới khi người ta có thể sử dụng nhiều thiết bị Android với một tài khoản Google . Lần đầu tiên bật một thiết bị mới sẽ hỏi liệu người ta có muốn lưu trữ dữ liệu của một người với Google hay không, về cơ bản, điều này sẽ luôn đồng bộ hóa "một số nội dung" với các máy chủ của Google, về cơ bản

  • một số dữ liệu ứng dụng (nếu ứng dụng hỗ trợ rõ ràng)
  • Mật khẩu Wi-Fi
  • dấu trang trình duyệt
  • danh sách các ứng dụng được cài đặt từ Google Play
  • từ được thêm vào từ điển được sử dụng bởi bàn phím trên màn hình
  • hầu hết các cài đặt tùy chỉnh của bạn

Chi tiết có thể được tìm thấy trong Bảng điều khiển của Google . Các câu hỏi liên quan ở đây bao gồm các vấn đề đó bao gồm:

Các API nhà phát triển trên Google Backup cung cấp cho một số cái nhìn sâu sắc hơn nữa về cách các công cụ sao lưu có nghĩa vụ phải làm việc (và một số câu hỏi ở đây cho thấy làm thế nào nó thực sự hoạt động - đó là, đôi khi nó làm, đôi khi chỉ một phần, và đôi khi không phải ở tất cả). Ngoài độ tin cậy và thực tế là không phải ai cũng muốn dữ liệu riêng tư của mình trên đám mây (và thậm chí cả tài liệu tham khảo API đã đề cập 2 cảnh báo: Android không đảm bảo về bảo mật dữ liệu của bạn trong khi sử dụng sao lưu. Bạn nên luôn thận trọng về việc sử dụng sao lưu để lưu trữ nhạy cảm. dữ liệu, chẳng hạn như tên người dùng và mật khẩu. ), câu hỏi chính của tôi là:

Đã sao lưu dữ liệu từ nhiều thiết bị bằng cùng một tài khoản:

  • Điều gì sẽ xảy ra với một thiết bị khôi phục cài đặt gốc được sử dụng theo cách đó trước đây? Nó sẽ được công nhận, và chỉ có những thứ được khôi phục đã được sử dụng trên nó trước đây?
    (nhận dạng thiết bị có thể xảy ra, ví dụ như qua IMEI (nhưng không thông qua Android_ID, vì điều đó có thể xảy ra với cài đặt gốc ) - và đây có thể là lý do cho hành vi được mô tả trong câu trả lời của Nalum )
  • những gì sẽ được khôi phục vào một thiết bị (mới / khôi phục cài đặt gốc) mà bạn vừa khởi tạo lần đầu tiên với tài khoản Google này?
    (nếu thiết bị được xác định có bản sao lưu trong tài khoản Google được sử dụng, điều này có thể kích hoạt một hành động đặc biệt cho "thiết bị mới", ví dụ: "khôi phục tất cả, thiết bị đã thay đổi!" - hoặc "khôi phục tất cả từ thiết bị X không còn được kết nối, như nó có thể đã được thay thế! "- nhưng dính vào" chỉ khôi phục những gì có trên thiết bị đó "trong trường hợp khôi phục cài đặt gốc)

Thỏa thuận là: Nếu một thiết bị có nhiều thiết bị, chúng thường được sử dụng cho các vấn đề cụ thể, do đó, người ta không muốn mọi thứ trên tất cả các thiết bị. Như tôi đã thấy không có cách nào để chọn dữ liệu để sao lưu (ví dụ: để loại trừ những "dữ liệu nhạy cảm" mà chúng tôi đã được cảnh báo: Mật khẩu WiFi sẽ thuộc về loại đó), tôi cho rằng cũng không có lựa chọn nào để khôi phục? Vậy điều này được xử lý như thế nào?


Hai nguồn nữa có thể là một thông tin thú vị về điều này là: Sao lưu và khôi phục Google cho Android là thiết bị cụ thể? (mô tả "mớ hỗn độn" của ít nhất các phiên bản Android trước 4.x) và dịch vụ sao lưu và khôi phục tự động của Android rất tuyệt ... khi nó hoạt động . Cả hai phần phản ánh câu hỏi của tôi, nhưng không ai trả lời nó. Rất nhiều về việc giải quyết vấn đề.
Izzy

3
Đầu vào duy nhất tôi có thể cung cấp là nó không đáng tin cậy. Tôi ước có một nút sao lưu / khôi phục thủ công mà tôi có thể sử dụng. Tôi đã đặt lại máy tính bảng của mình vào một ngày khác và nó đã không khôi phục tất cả các ứng dụng và cài đặt của tôi, nhưng lần trước nó đã được thực hiện. Tôi không thích điều đó tôi không thể dựa vào nó.
crdx

Vì thậm chí không có tiền thưởng có thể đưa ra các chi tiết, tôi đoán cơ hội tìm thấy "câu trả lời đầy đủ" là khá thấp. Vì vậy, chúng ta biết về điều tương tự như trước đây: nó có thể hoạt động "theo cách này hay cách khác", người ta phải cố gắng tìm ra, và người ta có thể may mắn hoặc không. Cảm ơn, Google, về một công cụ không đáng tin cậy mà không có bất kỳ tài liệu hướng dẫn sử dụng nào :( Vì vậy, tiền thưởng được chuyển đến Nalum: mặc dù câu trả lời đã có trước tiền thưởng, đó là cách tốt nhất chúng tôi có :)
Izzy


@Flow Vâng. Và câu trả lời trông thật đáng kinh ngạc :)
Izzy

Câu trả lời:


42

Hãy nói về bộ, em yêu

Dịch vụ sao lưu của Android có một khái niệm gọi là một bộ : tập hợp tất cả dữ liệu được sao lưu từ một thiết bị (trên một lần vận chuyển , nhưng đó là một chi tiết). Mỗi bộ được xác định bởi một chuỗi duy nhất, chẳng hạn như IMEI trên thiết bị. Khi một ứng dụng (hoặc danh sách các ứng dụng đã cài đặt) được sao lưu, dữ liệu sao lưu của nó sẽ đi vào tập hợp được liên kết với thiết bị mà nó được sao lưu từ đó. Tất cả các bộ vẫn dành riêng cho tài khoản Google của người dùng. Nếu bạn xóa thiết bị của mình và bán cho người khác, anh ta sẽ không thể truy cập vào thiết bị đó trừ khi anh ta có thể đăng nhập vào tài khoản Google của bạn.

Hành vi mặc định

Khi một ứng dụng được cài đặt hoặc một thiết bị có danh sách các ứng dụng được khôi phục, trước tiên hệ thống sao lưu sẽ tìm trong thiết bị đó để lấy dữ liệu sao lưu cho gói đó. Nếu nó không tìm thấy bất kỳ (vì đó là một thiết bị hoàn toàn mới không có dữ liệu sao lưu hoặc vì gói đó chưa bao giờ được cài đặt trên thiết bị đó), nó sẽ mở rộng tìm kiếm sang các bộ khác. (Nếu có lựa chọn, nó sẽ sử dụng bộ cuối cùng được sử dụng để khôi phục toàn bộ thiết bị.)

Do đó, khi bạn thiết lập một thiết bị mới, nó sẽ khôi phục danh sách các ứng dụng từ bản sao lưu của thiết bị cũ và khôi phục từng ứng dụng từ bản sao lưu của thiết bị cũ. Nếu bạn đã cài đặt một ứng dụng trên một thiết bị và bạn cài đặt nó trên một thiết bị khác, ứng dụng sẽ được khôi phục với dữ liệu từ thiết bị cũ. Trong cả hai trường hợp, dữ liệu hiện được sao lưu vào bộ thiết bị mới , điều đó có nghĩa là dữ liệu sao lưu từ hai thiết bị được tách biệt kể từ bây giờ.

Sau khi bạn khôi phục cài đặt gốc cho thiết bị, thiết bị sẽ khôi phục từ bản sao lưu cuối cùng của thiết bị đó nếu có, và không thành công, từ bản sao lưu của một số thiết bị khác nếu có, nhưng nó sẽ bắt đầu tạo bộ riêng cho thiết bị đó từ đó. Đó là lý do tại sao hai thiết bị của Nalum không nhìn thấy các ứng dụng sao lưu của nhau: chúng đều được khôi phục từ bản sao lưu cuối cùng của chúng.

Nguồn

Cơ chế này không có bất kỳ tài liệu hướng tới người dùng nào, vì nó được cho là tự động làm đúng, nhưng mã có sẵn .

bmgr: sử dụng cơ bản

Như Izzy tìm thấy, bmgrcông cụ cung cấp cho bạn một số quyền kiểm soát quá trình này. Nó nhằm mục đích hỗ trợ cho các lập trình viên giúp kiểm tra và gỡ lỗi tích hợp sao lưu trong ứng dụng của họ. Bạn có thể sử dụng công cụ này adb shellđể kích hoạt sao lưu và khôi phục các gói đã chọn, xóa sạch dữ liệu sao lưu của gói và thậm chí khôi phục toàn bộ thiết bị.

Đừng cố sử dụng nó trong vỏ trên thiết bị trừ khi : bạn cần cấp hệ thống android.permission.BACKUPđể làm bất cứ điều gì thú vị với nó.

Bạn có thể tạo một ứng dụng cập nhật dữ liệu sao lưu ngay lập tức:

bmgr backup com.shadowburst.showr
bmgr run

(hoặc bất kể tên gói của ứng dụng là gì). Thông thường không cần phải làm điều này, vì các ứng dụng yêu cầu sao lưu riêng của chúng bất cứ khi nào dữ liệu của chúng thay đổi, nhưng điều này cho phép bạn làm việc xung quanh một ứng dụng được viết xấu. Để khôi phục một gói từ dữ liệu được sao lưu, theo mặc định, nó sẽ chọn:

bmgr restore com.shadowburst.showr

nhưng một lần nữa, điều này sẽ chỉ làm những gì thiết bị sẽ tự làm, vì vậy bạn không cần phải sử dụng nó. Cũng lưu ý rằng thiết bị đã cần được cài đặt để thực hiện công việc này.

Điều khiển nhiều hơn

Bây giờ cho những thứ mà hệ thống sao lưu sẽ không làm được. Để xem bộ dữ liệu sao lưu nào khả dụng:

bmgr list sets

và bạn sẽ nhận được một số đầu ra như thế này:

  3ff7800e963f25c5 : manta
  3f0e5c90a412cca7 : manta
  3dd65924a70e14c8 : TF101
  3baa67e9ce029355 : m0

Số hex 64 bit ở bên trái là mã thông báo . Bạn sẽ cần điều này trong một phút. Thứ bên phải là một tên (tương đối) thân thiện cho thiết bị sở hữu bộ. Ví dụ, manta là tên mã cho ; TF-101 dùng để chỉ ban đầu . Khi bạn đã tìm ra bộ nào bạn muốn, bạn có thể khôi phục một ứng dụng từ bộ đó bằng mã thông báo của nó:

bmgr restore 3ff7800e963f25c5 com.shadowburst.showr

Bạn có thể thêm nhiều tên gói vào cuối lệnh để khôi phục một số gói cùng một lúc hoặc bạn có thể chỉ định không có tên gói (chỉ mã thông báo) để khôi phục mọi ứng dụng có dữ liệu trong bộ đó (nghĩa là nó có toàn hệ thống khôi phục).

Cuối cùng, bạn có thể xóa dữ liệu của ứng dụng khỏi bộ hiện tại:

bmgr wipe com.shadowburst.showr

Điều này sẽ làm cho hoạt động sao lưu tiếp theo của nó bắt đầu từ đầu. Điều này có thể hữu ích sau khi gỡ cài đặt một ứng dụng, nếu lỗi trong ứng dụng làm hỏng dữ liệu sao lưu của nó và bạn không muốn nó được khôi phục.

Bạn không thể làm cho một thiết bị bắt đầu ghi vào một bộ khác, bạn cũng không thể xóa toàn bộ.


Câu trả lời rất kỹ lưỡng, cảm ơn bạn, Dan! "Điều khiển thủ công" (nơi khôi phục từ) là một cộng thêm mà tôi đang tìm kiếm. Tôi ước có một sự lựa chọn của người dùng cho tất cả những điều này, như cửa sổ bật lên khi khôi phục bắt đầu: "Bạn có muốn khôi phục không?" -> "Từ tập hợp nào?" -> "Chọn chi tiết (khôi phục hoàn toàn, xxx .. .) ". Mặc dù thật tuyệt khi một ứng dụng biết "tự động làm đúng", tôi thích được kiểm soát và đôi khi điều đó thậm chí còn cần thiết. Ngoài ra, có thể cần khôi phục trong các trường hợp không phải là cài đặt lại tại nhà máy và thiết bị mới, vì vậy cần có cách để người dùng kích hoạt nó ...
Izzy

7

Sau đây là câu trả lời cho câu hỏi, nhưng có thể làm sáng tỏ một số chi tiết:

Một số phần được trích xuất từ API sao lưu

Mặc dù API chủ yếu nhắm vào các nhà phát triển, có một vài sự thật chúng tôi có thể trích xuất cho trường hợp của chúng tôi. Trong danh sách sau đây, chữ in nghiêng đánh dấu trích dẫn từ tài liệu API.

  • Android tự động thực hiện thao tác khôi phục khi ứng dụng của bạn được cài đặt và tồn tại dữ liệu sao lưu liên quan đến người dùng.
    → điều này có thể có nghĩa là hai điều:
    • nếu một ứng dụng hỗ trợ API sao lưu của Google và người dùng đã bật Google Backup, dữ liệu sao lưu có sẵn sẽ tự động được khôi phục khi cài đặt. Điều tốt khi bạn cài đặt một ứng dụng được sử dụng trên một thiết bị cho thiết bị thứ hai lần đầu tiên.
    • các bản sao lưu chỉ được liên kết với Tài khoản Google, không phải với thiết bị ( và tồn tại dữ liệu sao lưu được liên kết với người dùng ) - hoặc thực tế khác chỉ bị bỏ qua là không liên quan cho trường hợp đặc biệt này ("ứng dụng được cài đặt")
  • Vận chuyển sao lưu là thành phần phía máy khách của khung sao lưu của Android, được nhà sản xuất thiết bị và nhà cung cấp dịch vụ tùy chỉnh. Việc vận chuyển sao lưu có thể khác nhau từ thiết bị này sang thiết bị khác [...]
    → điều này có thể giải thích sự không đáng tin cậy khi nói đến các thiết bị khác nhau (hoặc các phiên bản Android khác nhau).
    (nhấn mạnh của tôi)
  • Sao lưu dữ liệu không được đảm bảo khả dụng trên tất cả các thiết bị hỗ trợ Android.
    (miễn bình luận)
  • Google cung cấp dịch vụ vận chuyển sao lưu với Dịch vụ sao lưu Android cho hầu hết các thiết bị chạy Android chạy Android 2.2 trở lên.
    → ở đây chúng tôi có phiên bản Android tối thiểu cần thiết cho Google Backup có sẵn ở tất cả: Froyo, AKA Android 2.2
  • Để lấy Khóa dịch vụ sao lưu của bạn, hãy đăng ký Dịch vụ sao lưu Android. [...]
    → mỗi ứng dụng phải có khóa riêng. Không có "tại sao" được mô tả, nhưng một phỏng đoán tốt: cách ly các bản sao lưu để không ứng dụng nào có thể đọc các bản sao lưu của một ứng dụng khác (khóa sai; như sao lưu của một người dùng khác: tài khoản sai)
  • Trong khi phát triển ứng dụng của bạn, bạn có thể bắt đầu một hoạt động sao lưu ngay lập tức từ Trình quản lý sao lưu bằng công cụ bmgr.
    → có vẻ như có một cách để kích hoạt sao lưu thủ công? Hãy đi sâu vào vấn đề đó sau. ↓
  • Khi đến lúc khôi phục dữ liệu ứng dụng của bạn, Trình quản lý sao lưu sẽ gọi onRestore()phương thức của tác nhân sao lưu của bạn .
    → điều này một lần nữa nhấn mạnh mục đầu tiên của danh sách này: đầu tiên ứng dụng phải được cài đặt, sau đó các cài đặt riêng của chúng được sử dụng để khôi phục dữ liệu của nó. Ở giao diện thứ hai: nếu khôi phục ứng dụng không thành công, sẽ không có khôi phục dữ liệu cho các ứng dụng bị lỗi - cho đến khi bạn cài đặt thủ công chúng qua Google Play. Sau đó, như mục đầu tiên được hiển thị, dữ liệu sẽ tự động được khôi phục qua Google Backup theo các điều kiện được giải thích (phải được sao lưu cùng với nó, cùng một tài khoản, v.v.)
  • Sao lưu các tệp khác
    → tha thứ cho tôi không trích dẫn từ nội dung (kỹ thuật) của chương đó, nhưng tóm lại: chỉ các tệp từ bộ nhớ trong có thể được sao lưu theo nó.

Một số phần được trích xuất từ API bmgr

  • Nó cung cấp các lệnh để tạo ra các hoạt động sao lưu và khôi phục [...]
    → giống như đây là cách kích hoạt các hành động theo cách thủ công nếu "tự động hóa" thất bại
  • Các lệnh này được truy cập thông qua vỏ adb.
    → điều này không cần bất kỳ lời giải thích :)
  • adb shell bmgr backup <package>
    → OK, vì vậy hành động này bị ràng buộc với các ứng dụng. Đoán xem bạn có biết tên gói của nhà cung cấp dữ liệu không, tên này cũng sẽ hoạt động (ví dụ: com.android.providers.settingsđối với cài đặt hệ thống hoặc com.android.providers.telephonycho SMS / MMS, v.v.?)
  • bạn có thể buộc tất cả các hoạt động sao lưu đang chờ xử lý chạy ngay lập tức bằng cách sử dụng bmgr runlệnh
    → lệnh đầu tiên chỉ là "lập lịch" sao lưu. Đã kích hoạt tất cả các gói, điều này có thể được sử dụng để thực hiện chúng ngay lập tức.
  • adb shell bmgr restore <package>
    → điều này có vẻ tốt là đúng, phải không? Chính xác, bởi vì: Trình quản lý sao lưu sẽ ngay lập tức khởi tạo tác nhân sao lưu của ứng dụng và gọi nó để khôi phục. Chỉ dữ liệu, vì ứng dụng đã cần phải ở đó (vì các thói quen của nó được gọi).

Vì vậy, trong ngắn hạn: bmgrcó thể được sử dụng để kích hoạt sao lưu cho các ứng dụng hỗ trợ Google Backup mà bạn đã cài đặt - và nó có thể kích hoạt khôi phục dữ liệu cho cùng. Nó không thể được sử dụng để kích hoạt khôi phục hoàn toàn - ít nhất là không được ghi lại ở đây.


Tôi biết điều này đã cũ và ai đó có thể tấn công tôi vì đã nhận xét về một câu hỏi cũ như vậy nhưng đây là kết quả phù hợp nhất mà tôi có thể tìm thấy cho dù tôi có khó khăn đến mức nào. Tôi mới mua một chiếc điện thoại mới và khi thiết lập thiết bị khởi động, nó KHÔNG hiển thị Nexus 5x cũ của tôi dưới dạng thiết bị để khôi phục và tôi BIẾT sao lưu và khôi phục đã được bật trên 5x. 5x đã hoàn toàn chết vì vậy tôi không thể làm gì để giúp đỡ. Và khi thực hiện các bộ danh sách bmgr, nó hiển thị chính xác thiết bị sai mà nó đã hiển thị trong khi thiết lập .... mọi lời khuyên sẽ được đánh giá rất cao.
Soundfx4

1
@ Soundfx4 Tôi có thể đề nghị bạn hỏi một câu hỏi riêng, dành riêng không? Hãy chào đón để liên kết ở đây để tham khảo. Tôi sẽ không thể giúp bạn với vấn đề cụ thể đó vì tôi không sử dụng Google Backup.
Izzy

1
Đó là một ý tưởng tốt hơn nhiều, cảm ơn bạn. Internet không bao giờ có thể có đủ thông tin hữu ích ngoài kia! Tôi sẽ gõ một cái khi tôi có thời gian. Ty cho trả lời!
Soundfx4

6

Một số thông tin thêm về sao lưu Google. Khi tôi flash firmware tùy chỉnh, nó không khôi phục các ứng dụng như tôi mong đợi. Trong Cài đặt -> Sao lưu & đặt lại, nó hiển thị "Sao lưu vào bộ đệm riêng chỉ gỡ lỗi" và bmgr list setskhông có kết quả.
Tôi đã giải quyết vấn đề của mình bằng cách thực hiện các bước sau adb shell:
$ bmgr transport com.google.android.backup/.BackupTransportService
$ bmgr list sets 3a0a00a516a1daf1 : LT22i
Điều này vẫn chưa đủ. Nó không bắt đầu cài đặt ứng dụng. Điều này cho thấy lý do tại sao:
$ bmgr list sets 3179e4ab08d74930 : LT22i 3a0a00a516a1daf1 : LT22i
Nó đã tạo ra một bộ mới, mặc dù IMEI rõ ràng là giống nhau. Dù sao, đây là bản sửa lỗi:
$ bmgr restore 3a0a00a516a1daf1(ID được hiển thị lần đầu tiên)
$ bmgr run(để chắc chắn)
Sau đó, nó bắt đầu tải xuống các ứng dụng.


3

Kinh nghiệm của tôi với nó là mỗi thiết bị đều có bản sao lưu riêng. Tôi nhận được điều này từ việc làm hỏng Nexus 7 và Galaxy S II của tôi. Khác hơn là tôi không biết.

Ứng dụng:

Nexus 7 của tôi có các ứng dụng Caustic , DC Comics20 phút bữa ăn mà khi cài đặt lại nhà máy Galaxy S II của tôi không được cài đặt trên Galaxy S II.

Galaxy S II của tôi có các ứng dụng DriveDroidHuman Japanese mà khi cài đặt lại nhà máy Nexus 7 của tôi không được cài đặt trên Nexus 7.

Các ứng dụng tương thích với cả hai thiết bị, vì vậy tính không tương thích có thể là lý do khiến chúng không được cài đặt trên thiết bị khác tương ứng.

Dữ liệu:

Đối với Wifi và các dữ liệu khác, tôi không chắc chắn vì mỗi lần tôi đã thiết lập Wifi trên mỗi thiết bị trong quá trình thiết lập Android ban đầu. Đối với các tài khoản google khác mà bạn có thể có dường như chúng không được sao chép vào từng thiết bị và điều tương tự cũng đúng với tài khoản Skype và GitHub trên mỗi thiết bị.


1
Chỉ ứng dụng đã được cài đặt trên thiết bị đó được cài đặt lại từ bản sao lưu. EG ứng dụng DriveDroid được cài đặt trên điện thoại của tôi và không tải xuống Nexus 7 sau khi khôi phục cài đặt gốc. Tôi có Caustic trên Nexus 7 không tải xuống trên Galaxy S II trong số các ứng dụng khác.
Nalum

Cảm ơn - Tôi đã tích hợp điều này với câu trả lời. Vì có các báo cáo khá trái ngược nhau: Bạn có nên cập nhật câu trả lời của mình với các phiên bản Android của thiết bị được sử dụng không? Cảm ơn trước! Để không làm xáo trộn chuyển đổi của chúng tôi, tôi cũng sẽ xóa và xóa một số nhận xét của mình (vui lòng thực hiện tương tự cho những người đã tích hợp vào chính câu trả lời).
Izzy

Vì vậy, bây giờ đến thỏa thuận: nếu không có gì được khôi phục chéo, phải làm gì nếu một trong các thiết bị "bị hỏng" (hoặc bạn muốn thay thế hai thiết bị này bằng một thiết bị mới) và bạn muốn "hợp nhất"? Đoán tôi không phải là người duy nhất thực sự thiếu một hướng dẫn tốt ...
Izzy

1

Tôi đã sao lưu mọi thứ bằng cách sử dụng cả sao lưu Google tích hợp và sao lưu Helium trước khi tôi xóa và cài đặt ROM tùy chỉnh Carbon trên Nexus 4 (từ kho KitKat). Google mong đợi khôi phục ứng dụng, cài đặt, v.v. như đã làm trước đây khi tôi khôi phục điện thoại này nhưng không có niềm vui.

Đã thử Helium, cũng không có niềm vui, ngay cả với khôi phục thủ công 'Tải xuống PC' - cho biết 'đã khôi phục' nhưng Wifi và dữ liệu ứng dụng vẫn không có.

Chạy bmgr restore <xxx>khôi phục hoàn toàn và bmgr runnhư chi tiết ở trên đã kích hoạt khôi phục Google đầy đủ và thực hiện một điều trị - cứu cánh cho tôi!

Google có thể nỗ lực tốt hơn, đặc biệt là nếu họ muốn cạnh tranh với ý tưởng 'chỉ hoạt động' của Apple ... Tôi vẫn yêu thích khả năng hack của Android bất chấp những cạm bẫy của nó!

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.