cuốn sách gpt4 ai đã làm

Android kết nối đồng thời với Ethernet và Wi-Fi

In lại Tác giả: Taklimakan Thời gian cập nhật: 2023-11-02 22:15:33 27 4
mua khóa gpt4 Nike

Tôi có một thiết bị TV box nhỏ chạy Android. Bất cứ khi nào tôi hiển thị giao diện Wi-Fi, giao diện Ethernet sẽ ngắt kết nối. Sau đó, nếu tôi hiển thị thiết bị Ethernet, giao diện Wi-Fi. Tôi đã thử nhiều phương pháp khác nhau, bao gồm cả việc hiển thị giao diện theo cách thủ công bằng dòng lệnh, nhưng tôi cũng gặp phải vấn đề tương tự. Tôi muốn có thể kết nối với Wi-Fi và đặt nó làm cổng mặc định, nhưng sau đó cũng kết nối với cổng Ethernet để định tuyến một số lưu lượng truy cập qua giao diện đó. Rõ ràng điều này có thể thực hiện được trong Linux, vì vậy phải có một cách... Có ai biết điều gì đang làm hỏng giao diện khi cái kia khởi động không...

câu trả lời hay nhất

Đây là một hạn chế trong Android. Nó cố tình chỉ cho phép một kết nối được thiết lập tại một thời điểm và có một trình xử lý trong tệp "ConnectivityServices.java" sẽ tắt các mạng "không ưu tiên" khi các mạng có mức độ ưu tiên được bật. Đây cũng là lý do để bắt đầu phát wifi trong phạm vi điểm phát sóng được công nhận và ngắt kết nối dữ liệu di động...

Trong trường hợp có ai cần cái này, đây là những gì tôi đã làm:

Tải xuống mã nguồn AOSP cho phiên bản Android trên thiết bị của bạn.

Chỉnh sửa tệp "ConnectivityServices.java" cho phù hợp. Về cơ bản tôi chỉ nhận xét lệnh trong lệnh chuyển đổi dự phòng trong trình xử lý thay đổi kết nối. Tôi không có mã nguồn trước mặt, vì vậy nếu bạn cần biết tôi đang làm gì ở đây, vui lòng gửi tin nhắn cho tôi...

Dù sao thì hãy build mã nguồn AOSP trên máy của bạn.

Sau khi hoàn tất, hãy lấy tệp "services.jar" trong thư mục /dexclasses/ đã tạo. Giải nén nó bằng WinRAR và sao chép tệp "classes.dex" từ tệp .jar sang một thư mục riêng. Sử dụng công cụ này để trích xuất class.dex:https://code.google.com/p/smali/Lấy tệp "ConnectivityServices.smali" và bảo mật nó.

từ thiết bịĐi tới thiết bị mà bạn muốn bật cả hai giao diện mạng và sao chép tệp /system/framework/services.jar vào PC của bạn. Giải nén nó bằng WinRAR và sao chép tệp "classes.dex" từ tệp .jar vào một thư mục riêng. Sử dụng lệnh Java Smali để trích xuất class.dex.

Lấy tệp ConnectivityServices.smali từ AOSP và đặt trực tiếp vào tệp bạn vừa giải nén bằng class.dex trên thiết bị. Có thể bạn nên sao lưu tệp ConnectivityServices.smali gốc trước khi ghi đè lên nó.

Sau đó, chỉ cần đóng gói lại tệp class.dex bằng lệnh baksmali. Sử dụng winRAR để sao chép tệp class.dex vào tệp services.jar gốc. Sao lưu lại file gốc và ghi đè vào file .jar.

Sau đó, chỉ cần đặt tệp services.jar mới vào thư mục /system/framework/ trên thiết bị.

Sau đó khởi động lại - lần khởi động đầu tiên mất nhiều thời gian hơn bình thường.

Về việc kết nối đồng thời Ethernet và Wi-Fi trên Android, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/18143534/

27 4 0
Taklimakan
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress