Làm cách nào để xây dựng một tệp APK trong Eclipse?


424

Khi tôi phát triển dự án bằng Eclipse , tệp APK sẽ xuất hiện trên trình giả lập. Nhưng tôi muốn tải ứng dụng của mình lên một thiết bị thực sự. Có một công cụ để xây dựng một tập tin APK?

Quy trình là gì? Hoặc có thể kéo tệp APK từ trình giả lập?


4
Quá nhiều câu trả lời là về cách cài đặt tệp apk đã tạo hoặc là các câu trả lời khiến các mối quan tâm khác (ký chính) được xem xét. Điều gì sẽ xảy ra nếu tất cả những gì tôi muốn là tạo apk (trong thư mục bin) như thể tôi đã nhấp vào nút "Chạy" mà không có bất kỳ câu hỏi hoặc quyết định nào nữa?
Jarl

1
Tôi đang tìm kiếm chính xác điều tương tự. BTW, sử dụng "xuất gói ứng dụng chưa ký" trong các công cụ Android cực kỳ chậm và tôi phải chỉ định vị trí mỗi lần, vì vậy không thực sự phù hợp.
TommyTh

1
Bên dưới, Salil Pandit đã đề xuất "cài đặt chạy thành Thủ công và khi bạn nhấn play, nó sẽ liệt kê các thiết bị / AVD có thể áp dụng ngay khi bạn thực hiện việc này, APK được tạo - bạn thực sự không phải kích hoạt trình giả lập." Đó là những gì tôi cần. (Có thể đảm bảo một câu hỏi riêng nếu nó chưa tồn tại?)
TommyTh

2
Câu trả lời của Sarwar Erfan tốt hơn nhiều. Tại sao không thay đổi câu trả lời được chấp nhận?
NLemay 15/03/13

Câu trả lời:


399

Khi bạn chạy dự án trên trình giả lập, tệp APK được tạo trong binthư mục. Hãy nhớ rằng chỉ xây dựng dự án (và không chạy nó) sẽ không xuất tệp APK vào binthư mục.


80
Hãy nhớ rằng APK không được ký với khóa riêng của nhà phát triển của bạn, vì vậy bạn không nên phân phối hoặc tải nó lên thị trường.
Tin học

17
Vì vậy, và nếu chúng ta chỉ muốn xây dựng nó nhưng không bắt đầu một trình giả lập ồn ào?
sergzach

9
Một người sử dụng nặc danh đã cố gắng chỉnh sửa bài này để bao gồm lưu ý rằng đây cơ chế nhận được một .apktập tin sẽ nhận được một debug xây dựng . Nếu bạn muốn xây dựng bản phát hành, thay vào đó hãy làm theo câu trả lời của Sarwar .
sarnold

1
và vị trí của thùng đó ở đâu?

3
@sergzach được đặt chạy thành Thủ công và khi bạn nhấn play, nó sẽ liệt kê các thiết bị / AVD có thể áp dụng ngay khi bạn thực hiện việc này, APK được tạo - bạn thực sự không phải kích hoạt trình giả lập. Điều đó nói rằng, sarnold là đúng câu trả lời của Sanwar là tốt hơn để phát hành ứng dụng.
Salil Pandit

314

Để thử nghiệm trên thiết bị, bạn có thể kết nối thiết bị bằng USB và chạy từ Eclipse giống như một trình giả lập.

Nếu bạn cần phân phối ứng dụng, thì hãy sử dụng tính năng xuất:

văn bản thay thế

văn bản thay thế

Sau đó làm theo hướng dẫn. Bạn sẽ phải tạo một khóa trong quá trình.


Điều gì nếu bạn muốn phân phối cho người thử nghiệm beta?
shim

3
@shim: chỉ cần cung cấp các tệp apk cho người kiểm tra beta. Hoặc, lưu trữ các tệp apk ở đâu đó và cung cấp url cho người kiểm tra.
Sarwar Erfan

1
để kiểm tra tệp này, hãy kết nối thiết bị Android của bạn và nhập dòng lệnh: "cài đặt adb ./myApp.apk"
andy

173

Không cần tạo chìa khóa và cứ thế nếu bạn chỉ muốn chơi xung quanh với nó trên thiết bị của mình.

Với Eclipse:

Để xuất .apk chưa được ký từ Eclipse, nhấp chuột phải vào dự án trong Gói Explorer và chọn Công cụ Android -> Xuất gói ứng dụng chưa ký . Sau đó chỉ định vị trí tệp cho .apk không dấu.


3
Đây có vẻ là một câu trả lời tốt. Tuy nhiên, lỗi lint android ngăn điều này hoạt động ... Hành động "Chạy" tiêu chuẩn bằng cách nào đó thành công trong việc tạo tệp apk ngay cả với lỗi lint android.
Jarl

Hoạt động, mặc dù nó tạo ra .apk ngay cả khi có lỗi (biên dịch, ...) có thể là một điều xấu hoặc tốt.
Francisco Corrales Morales

Cám ơn vì đã chia sẻ. điều này là đủ tốt để thử nghiệm ban đầu của apk được chia sẻ.
webgenius

Giải pháp này làm cho nhật thực sụp đổ quá thường xuyên, có scriptcách tiếp cận nào không?
zionpi

33

Tệp APK nằm trong /workspace/PROJECT_FOLDER/binthư mục. Để cài đặt tệp APK trong thiết bị thực:

  1. Kết nối thiết bị thực của bạn với PC / máy tính xách tay.

  2. Chuyển đến sdk/tools/sử dụng một thiết bị đầu cuối hoặc dấu nhắc lệnh.

  3. adb install <FILE PATH OF .APK FILE>

Đó là nó...


2
adb đã chuyển đến thư mục "platform-tools". Không chắc chắn từ phiên bản nào của SDK
Rob Von Nesselrode

24

Chỉ cần nhấp chuột phải vào dự án của bạn và sau đó đi đến

* Xuất -> Android -> Xuất ứng dụng Android -> YOU_PROJECT_NAME -> Tạo đường dẫn lưu trữ khóa mới -> Điền chi tiết -> Đặt vị trí .apk -> Bây giờ bạn có thể nhận tệp .apk *

Cài đặt nó trong điện thoại di động của bạn.


21

Chúng tôi có thể tạo một tệp APK đã ký và chưa ký. Một tệp APK đã ký có thể cài đặt trong thiết bị của bạn.

Để tạo tệp APK đã ký:

  1. Bấm chuột phải vào dự án trong Gói Explorer

  2. Chọn Công cụ Android -> Xuất gói ứng dụng đã ký .

  3. Sau đó chỉ định vị trí tệp cho .apk đã ký.

Để tạo tệp APK không dấu:

  1. Bấm chuột phải vào dự án trong Gói Explorer

  2. Chọn Công cụ Android -> Xuất gói ứng dụng chưa ký .

  3. Sau đó chỉ định vị trí tệp cho tệp APK không dấu.


1
Tôi nghĩ rằng bạn đã trao đổi các phương pháp do nhầm lẫn.
AlphaMale

12

Khi bạn chạy ứng dụng của mình, điện thoại của bạn sẽ được phát hiện và bạn sẽ được cung cấp tùy chọn chạy trên điện thoại thay vì trên trình giả lập.

Hướng dẫn thêm về cách nhận diện điện thoại của bạn: http://developer.android.com/guide/developing/device.html

Khi bạn muốn xuất phiên bản tệp APK đã ký (để tải lên thị trường hoặc đưa lên trang web), nhấp chuột phải vào dự án trong Eclipse, chọn xuất, sau đó chọn "Xuất ứng dụng Android".

Thêm chi tiết: http://developer.android.com/guide/publishing/app-signing.html#ExportWizard


6

Các bin/XXX.apk tập tin có thể được xây dựng tự động ngay sau khi bạn lưu bất kỳ tập tin nguồn:

Window / Preferences, Android / Build, bỏ chọn "bỏ qua việc đóng gói và lập chỉ mục ..."


6

Cách đơn giản nhất để tạo APK có chữ ký / không dấu bằng cách sử dụng Eclipse và ADT như sau:

  1. Nhấp chuột phải vào dự án của bạn trong "Project Explorer"
  2. Di chuột qua "Công cụ Android"
  3. Chọn "Xuất gói ứng dụng đã ký" hoặc "Xuất gói ứng dụng chưa ký"
  4. Chọn vị trí cho tệp APK mới và nhấp vào "Lưu" .

    • LƯU Ý: Nếu bạn đang cố gắng xây dựng APK để phân phối beta, có thể bạn sẽ cần tạo một gói đã ký , yêu cầu kho khóa . Nếu bạn làm theo quy trình "Ứng dụng đã ký" trong ADT của Eclipse, nó sẽ hướng dẫn bạn trong quá trình tạo kho khóa mới.

Hi vọng điêu nay co ich.


6

Eclipse 3.7 (Indigo): Truy cập Windows -> Tùy chọn -> Android -> Xây dựng và bỏ chọn "Bỏ qua việc đóng gói và dexing cho đến khi xuất hoặc khởi chạy"

Ngoài ra, bạn có thể xây dựng thủ công qua Menu -> Project -> ** Bỏ chọn "Xây dựng tự động" **.


2
Cảm ơn bạn! Điều đó làm tôi phát điên
kpninja12

5

Nhấp chuột phải vào dự án trong Eclipse -> công cụ Android -> Xuất mà không cần khóa đã ký. Kết nối thiết bị của bạn. Gắn kết nó bằng sdk / công cụ.


5

Không ai đề cập đến điều này, nhưng kết hợp với các phản hồi khác, bạn cũng có thể tải tệp apk từ thư mục bin sang điện thoại hoặc máy tính bảng của mình bằng cách đặt nó trên một trang web và chỉ cần tải xuống.

Thiết bị của bạn sẽ phàn nàn về việc cài đặt nó sau khi bạn tải xuống. Thiết bị của bạn sẽ tư vấn cho bạn hoặc có nguy cơ cài đặt chương trình từ các nguồn không xác định và cung cấp cho bạn tùy chọn bỏ qua lời khuyên.

Câu hỏi của bạn rất cụ thể. Bạn không cần phải lấy nó từ trình giả lập, chỉ cần lấy tệp apk từ thư mục bin trong dự án của bạn và đặt nó trên thiết bị thực của bạn.

Hầu hết mọi người đang cung cấp cho bạn thông tin có giá trị cho bước tiếp theo (ký và xuất bản apk của bạn), bạn không bắt buộc phải thực hiện bước đó để có được nó trên thiết bị thực của bạn.

Tải xuống thiết bị thực của bạn là một phương pháp đơn giản.


-1, lý do: Vâng, nhưng câu hỏi này là về "xây dựng một .apk từ Eclipse", chứ không phải cách kiểm tra ứng dụng .apk
Francisco Corrales Morales

Câu hỏi rất rõ ràng về cách tải apk mà anh ta đã có vào một "thiết bị thực". Trong khi tất cả các đề xuất xây dựng, ký và xuất bản khác là những gợi ý tốt, anh ta có thể dễ dàng lấy apk của mình mà anh ta đã có trong trình giả lập bằng cách tải xuống "apk" hiện tại từ thư mục phụ dự án.
LD James
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.