2012-11-28 34 views
11

Tôi cần hỗ trợ Android 2.1 trở lên. Tôi biết rằng CalendarContract không có sẵn trong Android 2.1, vì vậy tôi đã thực hiện giải pháp sau.Có cách nào để thêm lời nhắc vào sự kiện lịch mới bằng Mục đích không?

Intent intent = new Intent(Intent.ACTION_EDIT) 
         .setType("vnd.android.cursor.item/event") 
         .putExtra("beginTime", beginTime.getTimeInMillis()) 
         .putExtra("title", title) 
         .putExtra("description", description) 
         .putExtra("eventLocation", location) 
         .putExtra("allDay", allDay) 
         .putExtra(Intent.EXTRA_EMAIL, email); 
       if(!allDay) { 
        intent.putExtra("endTime", endTime.getTimeInMillis()); 
       } 

       startActivity(intent); 

Điều này hoạt động rất tốt cho đến nay. Tôi đã thử nghiệm trên 2.1 đến 4.1.

Tôi cũng muốn thêm lời nhắc nhưng tôi không thể tìm thấy bất kỳ tài liệu nào về cách thực hiện bằng cách sử dụng Mục đích. Có ai có một ví dụ? Tôi muốn tránh thêm nhiều quyền hơn vào tệp kê khai của tôi để ghi vào lịch, vì vậy nếu bạn có đề xuất yêu cầu điều đó, tôi sẽ không thể sử dụng nó.

+0

Nếu bạn kiểm tra mã nguồn Android của kho, bạn không thể thêm lại thông qua ý định. Nhưng một số OEM có thể đã thực hiện điều này. Vì vậy, ngay cả khi bạn tìm thấy nó, nó sẽ không hoạt động trên tất cả các điện thoại – nandeesh

+0

@nandeesh Tôi nghĩ rằng điều này sẽ tốt nhất phục vụ như là một câu trả lời vì có vẻ như đó là sự thật và là trường hợp. Tôi muốn đánh dấu nó là câu trả lời nếu bất cứ ai khác sẽ chứng thực. – user5243421

Trả lời

1

Nếu bạn kiểm tra mã nguồn Android Calendar code, không thể thêm lời nhắc bằng ý định.

Thay vì điều này calendar có cài đặt để đặt lời nhắc mặc định. Nhưng một số OEM có thể đã thực hiện điều này. Vì vậy, ngay cả khi bạn tìm thấy nó, nó sẽ không hoạt động trên tất cả các điện thoại.

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