2015-09-30 12 views
8

tôi đang sử dụng cordova cho ứng dụng của tôi và sử dụng plugin InAppBrowser, trước khi sử dụng plugin này cordova build android --release lệnh đã hoạt động đúng cách nhưng sau khi thêm plugin này nó hiển thị lỗi, nếu tôi không đưa ra --release nó hoạt động đúng cách có nghĩa là trong chế độ gỡ lỗi không có vấn đề gì. Các lỗi mà tôi đang nhận được là như sauCordova inAppBrowser "ResourceType" loại vấn đề cho phát hành xây dựng

/Users/mukesh/Documents/code/teamworkCordova/xyz/platforms/android/src/org/apache/cordova/inappbrowser/InAppBrowser.java:555: Error: Expected resource of type id [ResourceType] 
       actionButtonContainer.setId(1); 
              ~ 
/Users/mukesh/Documents/code/teamworkCordova/xyz/platforms/android/src/org/apache/cordova/inappbrowser/InAppBrowser.java:563: Error: Expected resource of type id [ResourceType] 
       back.setId(2); 
          ~ 
/Users/mukesh/Documents/code/teamworkCordova/xyz/platforms/android/src/org/apache/cordova/inappbrowser/InAppBrowser.java:587: Error: Expected resource of type id [ResourceType] 
       forward.setId(3); 
           ~ 
/Users/mukesh/Documents/code/teamworkCordova/xyz/platforms/android/src/org/apache/cordova/inappbrowser/InAppBrowser.java:610: Error: Expected resource of type id [ResourceType] 
       edittext.setId(4); 
           ~ 
/Users/mukesh/Documents/code/teamworkCordova/xyz/platforms/android/src/org/apache/cordova/inappbrowser/InAppBrowser.java:633: Error: Expected resource of type id [ResourceType] 
       close.setId(5); 
          ~ 
/Users/mukesh/Documents/code/teamworkCordova/xyz/platforms/android/src/org/apache/cordova/inappbrowser/InAppBrowser.java:679: Error: Expected resource of type id [ResourceType] 
       inAppWebView.setId(6); 
            ~ 

    Explanation for issues of type "ResourceType": 
    Ensures that resource id's passed to APIs are of the right type; for 
    example, calling Resources.getColor(R.string.name) is wrong. 

Trả lời

24

Phiên bản mới nhất của các plugin Inappbrowser có một số "lỗi" Android Studio của tôi (phiên bản 1.4) than phiền về việc khi xây dựng một APK phát hành.

Điều này trên một trong số chúng.

Cách duy nhất tôi tìm thấy để có được xung quanh vấn đề này là để sửa đổi nội dung của InAppBrowser.java

tôi đã thay đổi tất cả sự xuất hiện của object.setId (int) để object.setId (Integer.valueOf (int))

ví dụ: inAppWebView.setId(6) ->inAppWebView.setId(Integer.valueOf(6))

Mọi người tìm thấy giải pháp tốt hơn (không thao túng nguồn) đều được chào đón.

+5

Làm việc cho tôi. Đã bỏ phiếu và tôi đã thêm các thay đổi này dưới dạng yêu cầu kéo tại git: https://github.com/Brianfit/cordova-plugin-inappbrowser/pull/1/files – brianfit

1

"Lỗi" là lỗi Lint, và vì lint không chắc chắn rằng số 6 thực sự là số 6, đó là lý do tại sao bạn cần đảm bảo rằng bạn thực hiện Integer.valueOf (int) trên mọi đối tượng .setId.

Tôi đã sửa lỗi này ở cấp nền tảng để nó không còn khiến quá trình biên dịch thất bại, nhưng để làm cho lint hạnh phúc, chúng tôi có thể sẽ thay đổi nguồn để Integer.valueOf được sử dụng.

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