2015-10-24 18 views
6

Tôi đã phát triển một dự án với Object Pascal sử dụng Firemonkey Framework. Tôi đã xuất bản ứng dụng của mình lên Cửa hàng Play sau đó tôi đã cố gắng cài đặt ứng dụng từ Cửa hàng Play nhưng có một thông báo: "ứng dụng này không tương thích với thiết bị của bạn"Ứng dụng Android (được phát triển trong Firemonkey Delphi) trong Play Store không tương thích với thiết bị của bạn

Tôi đã cố cài đặt ứng dụng cho điện thoại di động (điện thoại phổ biến samsung và sony) từ Cửa hàng Play và cài đặt thủ công -APK File- từ Máy tính của tôi. Khi tôi muốn cài đặt từ Cửa hàng Play cùng một ứng dụng với cùng một tệp APK và cùng một kho khóa và tất cả các tệp, tệp kê khai, v.v. giống nhau

Nó hoạt động khi tôi cài đặt tệp apk của mình theo cách thủ công. Nhưng vẫn không có công việc.

Tôi đã thay đổi quyền và điện thoại, máy ảnh, điện thoại di động và các quyền khác không được kiểm soát. Nó chỉ sử dụng viết và đọc lưu trữ, bluetooth (dự án cần nó) và internet.

Thiết bị di động của tôi là Chung 4G di động, One, Discovery và Samsung S4, Edge Plus, HTC One M7 và LG G3. Máy tính bảng - không tương thích với - là Samsung SM-T562

+0

Tôi không thấy Samsung SM-T562 trong Thiết bị được hỗ trợ của Play Developer Developer Console. Nhưng tôi có thể chạy ứng dụng của tôi với cài đặt APK bằng tay (với usb hoặc airdroid, vv) Làm thế nào tôi có thể chạy ứng dụng của tôi trên máy tính bảng samsung? (tải xuống từ cửa hàng trò chơi) –

Trả lời

7

Tôi đã giải quyết! Máy tính bảng mà tôi đang cố chạy ứng dụng cần được cài đặt từ Cửa hàng Play cũng muốn Truy cập Vị trí Thô và Truy cập Vị trí Tốt. Máy tính bảng này có thẻ GSM riêng để sử dụng Internet nhưng đó là Mô-đun Dữ liệu, không phải Điện thoại. Đây là lý do tại sao ứng dụng của tôi nói rằng "Ứng dụng không tương thích".

android.permission.BLUETOOTH 
android.permission.BLUETOOTH_ADMIN 
android.permission.INTERNET 
android.permission.READ_CALENDAR 
android.permission.READ_EXTERNAL_STORAGE 
android.permission.WRITE_CALENDAR 
android.permission.WRITE_EXTERNAL_STORAGE 

Ứng dụng của tôi hiện yêu cầu các quyền này và hoạt động!

2

Tôi rất tiếc. Tôi nghĩ rằng đây là về việc chạy các ứng dụng FMX trên các thiết bị Intel. Vì tôi đã viết câu trả lời nên tôi cũng có thể bỏ nó đi.

/Pontus

--- Làm sao để chạy các ứng dụng Delphi FMX trên các thiết bị Intel dựa ---

Nó thực sự rất dễ dàng. Làm theo các bước sau và ứng dụng Delphi FMX của bạn sẽ chạy tốt trên hầu hết các thiết bị Android của Intel. Bí quyết là hầu như tất cả các thiết bị dựa trên Intel đều có cái gọi là lib Houdini sẽ chuyển mã nhị phân ARM thành nhị phân Intel. Khi bạn tạo một ứng dụng trong Delphi, bạn sẽ nhận được APK chứa các tệp .so. Một là dành cho ARM, một là dành cho MIPS và tệp .so cuối cùng dành cho Intel. Tệp .so duy nhất chứa mã của bạn là tệp ARM .so. Các tệp khác sẽ được biên dịch trước các tệp .so sẽ hiển thị cho người dùng cuối rằng thiết bị không tương thích. Nếu bạn bỏ qua tệp .so của Intel từ APK, ứng dụng của bạn sẽ sử dụng lib Houdini và hoạt động tốt. Đó là nếu thiết bị Intel có cài đặt Houdini lib. Đó là tùy thuộc vào nhà sản xuất thiết bị để cài đặt, không phải bạn.

bước để bỏ qua file .so Intel từ tập tin APK của bạn:

  1. Đến thư mục này và đổi tên thư mục để x86 x86.old

C: \ Program (x86) \ Embarcadero \ Studio \ 17,0 \ lib \ android \ debug

  1. làm tương tự trong thư mục này

C: \ Program (x86) \ Embarcadero \ Studio \ 17,0 \ lib \ android \ phát hành

(Thay đổi 17,0-16,0 cho XE8 và 15,0 cho XE7 và vân vân)

Lần sau khi bạn xây dựng của bạn APK bạn sẽ nhận được một cảnh báo rằng thư mục x86 không tồn tại, và đó là tốt vì đó là những gì chúng tôi muốn. Bây giờ hãy thử cài đặt APK trên thiết bị Intel của bạn và bạn sẽ nhận thấy rằng nó sẽ hoạt động tốt. Nếu không thì thiết bị của bạn không cài đặt Houdini lib.

Điều duy nhất sẽ không hoạt động là gỡ lỗi và đó là vì Delphi không biết về lib Houdini.

Là tiền thưởng, APK của bạn sẽ nhỏ hơn một chút. Nếu bạn thích bạn có thể làm tương tự với các thư mục MIPS. Nếu thiếu Houdini lib trên thiết bị, ứng dụng của bạn sẽ gặp sự cố.

Hãy nhớ làm sạch và xây dựng dự án của bạn trước khi thử nghiệm.

Có một cách khác; Trong Delphi mở menu Project | Triển khai và bỏ chọn hàng $ (BDS) \ lib \ android \ debug \ x86 \ hoặc $ (BDS) \ lib \ android \ deploy \ x86 \ Với phương pháp này bạn sẽ phải chắc chắn rằng bạn làm điều này cho tất cả các dự án của bạn. Với phương pháp đầu tiên bạn không bao giờ phải lo lắng nữa.

Trong khi tôi ở đó tôi thực sự muốn giới thiệu giả lập này; https://amiduos.com/ Nó chỉ € 15. Tôi sử dụng nó với Dell của tôi P2314T và multitouch hoạt động perfekt. Nó là một bộ mô phỏng dựa trên Intel, nhanh và nó có cài đặt Houdini lib.

Mã hóa vui vẻ! /Pontus

+0

Không chỉ về ứng dụng đang chạy trên thiết bị Intel. Cài đặt của nó từ Cửa hàng Play. Khi tôi cài đặt ứng dụng của mình theo cách thủ công, nó hoạt động. Nhưng nó không hoạt động khi tôi cố gắng cài đặt từ Cửa hàng Play. Trên thực tế, Nó nói với tôi rằng "ứng dụng này không tương thích với thiết bị của bạn". Nhưng cảm ơn. Vẫn cần giúp .. –

Các vấn đề liên quan