2015-12-16 32 views
12

Tôi đang xây dựng một plugin Cordova Android. Tôi muốn sử dụng bên thứ ba View bên trong một số Intentđược tạo bởi plugin (cụ thể là scissors). thường (trong các dự án phi Cordova) Tôi sẽ đi đến tập tin build.gradle của dự án của tôi và thêm nó như thế này:Thêm phụ thuộc vào plugin Android Cordova

dependencies { 
compile 'com.lyft:scissors:1.0.1' } 

Nhưng nó có vẻ như các build.gradle tập tin trong dự án Plugin của tôi không có nghĩa là để được chạm vào? Cách thích hợp để thêm phụ thuộc vào dự án plugin là gì, để hỗ trợ cả hai bản dựng qua Cordova và xây dựng thông qua Android Studio? Cùng một câu hỏi, nhưng đối với một dự án địa phương (không được lưu trữ trên GitHub).

Trả lời

11

Bạn phải sử dụng tập tin gradle của riêng bạn và liên kết nó trên plugin.xml như thế này

<framework src="relative/path/your.gradle" custom="true" type="gradleReference" /> 

Bạn phải đặt thẻ mà trên plugin.xml, vân vân Plugin cài đặt tay cầm nó đọc và cordova nó (không chắc chắn nó hoạt động như thế nào trong nội bộ, nhưng tôi cho rằng nó sao chép các giá trị từ giá trị tùy chỉnh của bạn sang build.gradle chính). Vì vậy, bạn không thể thử nghiệm nó trên dự án hiện tại của bạn, bạn phải tạo một dự án mới và thêm các plugin và xem nếu nó hoạt động

+0

Hi, cảm ơn cho câu trả lời. bạn có thể giải thích những gì bạn có nghĩa là bằng cách _use tập tin gradle của riêng bạn? có cách nào để liên kết sự phụ thuộc vào kho lưu trữ git (chẳng hạn như trong liên kết trong câu hỏi) không? – YakirNa

+0

Bạn tạo một tệp .gradle mới với văn bản bạn đã đăng trên câu hỏi, sau đó bạn liên kết tệp .gradle của bạn trên plugin.xml như tôi đã nói với bạn về câu trả lời của tôi. Hãy xem qua plugin crosswalk – jcesarmobile

+0

và cách tôi thêm nó vào Android Studio để tôi có thể thực sự sử dụng nó? – YakirNa

3

Cordova Android plugins doc (trong "Add Dependency Libraries") xác định rằng bạn có thể thêm thư viện phụ thuộc với thẻ <framework> trong số plugin.xml của bạn.

Vì vậy, cho kéo phụ thuộc bạn có thể sử dụng:

<platform name="android"> 
    <framework src="com.lyft:scissors:1.0.1" /> 
+0

và sau đó? Tôi cần làm gì để tôi có thể sử dụng trong Android Studio? chạy 'cordova preparation ios' có vẻ không đủ, cũng không xây dựng hoặc làm sạch. – YakirNa

+0

Giả sử bạn có nghĩa là 'cordova chuẩn bị android', bạn cần tạo ứng dụng Cordova với sự phụ thuộc vào plugin của bạn để kiểm tra nó. Bạn có thể sử dụng 'cordova plugin thêm ' từ ứng dụng thử nghiệm này để thêm sự phụ thuộc trước khi chạy 'cordova chuẩn bị android'. – louisbl

+0

Vì một số lý do, khi tôi thử điều này với plugin của tôi, đôi khi nó dường như lưu vào bộ nhớ cache các cài đặt này. Thực hiện các thay đổi ở trên, tiếp theo là: 'nền tảng cordova rm android' 'nền tảng cordova thêm android @ 5.1.1' ' cordova plugin add myplugin' –

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