Tôi đang tạo tiện ích đơn giản cho quản lý liên hệ, cho phép người dùng quay số và gửi tin nhắn đến người liên hệ mong muốn.Làm cách nào để bắt đầu hoạt động mới từ màn hình khóa?
Nó hoạt động tốt như "tiện ích thông thường", nhưng khi tôi thêm nó làm tiện ích khóa màn hình trên Android 4.2, ứng dụng sms hoặc ứng dụng quay số không bắt đầu. Trên thực tế họ sao, nhưng "đằng sau" lockscreen, do đó người dùng vẫn phải tự mở khóa màn hình để có thể quay số/gửi sms.
Tôi đã tìm kiếm một số giải pháp trên web nhưng không có gì hữu ích. Tôi biết FLAG_DISABLE_KEYGUARD hoặc FLAG_SHOW_WHEN_LOCKED, nhưng vì ứng dụng sms/quay số không phải là "của tôi" nên tôi không biết liệu họ có thiết lập đúng cờ hay không. Như một cách giải quyết, tôi đã cố gắng tạo ra hoạt động của tôi mà thiết lập những lá cờ và sau đó chỉ đơn giản là bắt đầu một mong muốn (quay số hoặc sms), nhưng điều này không giúp đỡ.
Có cách mở khóa màn hình, nhưng điều này liên quan đến việc sử dụng KeyguardManager và KeyguardLock (hoạt động tốt), nhưng nhờ sử dụng KeyguardLock.newKeyguardLock() tôi kết thúc bằng điện thoại không thể tự động khóa, chắc chắn bởi vì tôi không phát hành khóa này (nó gây ra khóa để xuất hiện một lần nữa, đó không phải là những gì tôi muốn).
Thực tế, tiện ích này sẽ hoạt động tương tự như tiện ích con hoặc tiện ích con mặc định trên màn hình khóa?
Vì vậy, câu hỏi của tôi là, cách đạt được điều đó và bắt đầu hoạt động mới từ màn hình khóa?
Hi Filip. Tôi đã tự hỏi về điều tương tự. Tôi khá mới với android. Vì vậy, bạn có thể giúp tôi một chút ở đây? Làm thế nào để bạn đặt trình nghe nhấp chuột vào các nút hoặc chế độ xem trong bố cục tiện ích con? Điều đó có liên quan gì đến phương thức onReceive của Lớp AppWidgetProvider của bạn không? –
Xin chào, Vâng, điều này không rõ ràng và khá phức tạp để giải thích (chưa kể đến việc triển khai nó :)). Tôi đã cho tôi một thời gian để tìm ra điều này. Tóm lại, bạn cần sử dụng các lớp 'PendingIntent' và' RemoteView' để đạt được nó. Cách tốt nhất là xem bên trong [tài liệu] (http://developer.android.com/guide/topics/appwidgets/index.html#implementing_collections). Tóm lại, khi bạn đã định cấu hình chế độ xem của mình qua 'RemoteView', chỉ cần tiêm đối tượng' PendingIntent' vào nó thông qua phương thức 'RemoteView # setOnClickFillInIntent'. –