2015-10-21 34 views
7

Tôi hiện đang đấu tranh một chút với phản ứng gốc. Điều tôi muốn có là một dự án thư viện dựa trên phản ứng gốc mà sau đó tôi có thể đưa vào một số ứng dụng của mình.Dự án Thư viện Android với React Native

Điều đầu tiên tôi đã thử là di chuyển tất cả mã thiết lập phản ứng cơ bản [1] thành một Phân đoạn bên trong ứng dụng hiện có. Điều này làm việc mà không có bất kỳ vấn đề.

Sau đó, tôi đã bắt đầu một dự án Android hoàn toàn mới với một Hoạt động trống. Vào dự án này, tôi đã thêm một mô-đun dự án Thư viện Android mới có chứa "phản ứng phân đoạn gốc". Tôi khởi tạo dự án gốc phản ứng trong thư mục dự án gốc của tôi sau đó.

cấu trúc dự án hiện tại của tôi trông như thế này:

ReactApplication 
- basic files (index.android.js, index.ios.js, package.json, build.gradle, settings.gradle) 
- app/ (contains the real native android app which includes the "react native fragment") 
- reactlib/ (library project which contains a fragment with the code from [1]) 
- ios/ 
- node_modules/ (contains react-native) 

Bắt đầu dev-server qua npm start công trình mà không cần bất kỳ vấn đề nhưng ngay sau khi tôi bắt đầu ứng dụng Android tôi nhận được kết quả đầu ra folowwing logcat:

W/unknown:React(26957): Unable to dispatch keyboard events in JS as the react instance has not been attached 
W/unknown:React(26957): You seem to be running on device. Run 'adb reverse tcp:8081 tcp:8081' to forward the debug server's port to the device. 
E/(26957): Unable to load script from assets: index.android.bundle 
E/ReactNative(26957): Got JS Exception: ReferenceError: Can't find variable: require 

Xin lưu ý rằng tôi đã làm điều adb reverse tcp:8081 tcp:8081 và lỗi vẫn hiển thị.

Sau đó, tôi muốn tạo một aar ra khỏi dự án Thư viện Android và truy cập nó qua maven.

Tôi đang làm gì sai? Hoặc là những gì tôi muốn làm đơn giản là không thể?

[1] https://facebook.github.io/react-native/docs/embedded-app-android.html#add-native-code

Trả lời

3

Sau khi gỡ lỗi và cố gắng ra vài điều, tôi figured rằng nó không tải các tập tin từ máy chủ bó khi đóng gói trong aar.

Nếu bạn thêm index.android.bundle vào thư mục nội dung android, nó sẽ bắt đầu hoạt động.

+0

nếu index.android.bundle không tồn tại? – Zakos

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