Tải bản đầy đủ (.pdf) (7 trang)

Những phức tạp với lỗi thoát dialog không mong đợi trong OS X 10.6.3 pps

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (270.31 KB, 7 trang )

Những phức tạp với lỗi thoát dialog không mong đợi
trong OS X 10.6.3


Bổ sung thêm vào các bản vá lỗi và nâng cấp bảo mật trong bản
Mac OS X 10.6.3 vừa được phát hành gần đây, Apple trích dẫn
một tính năng mới gây ra lỗi thoát các dialog một cách không
mong đợi: “Mac OS X 10.6.3 có thể tự động thu thập các thông
tin sử dụng, triệu chứng từ máy tính Mac và g
ửi nó đến Apple để
phân tích
”.
Các phiên bản trước của Mac OS X đều có thể thu thập các
thông tin triệu chứng sau một đổ vỡ xảy ra. Tuy nhiên điểm mới
trong Mac OS X 10.6.3 chính là sự thu thập “thông tin sử
dụng” nặc danh (cho ví dụ, dữ liệu về cách bạn sử dụng Apple
và các phần mềm, phần cứng và dịch vụ của các hãng thứ ba).
Tuy nhiên trong việc bổ sung này, Apple cũng đã chủ động
ngừng một phần trong cách làm việc của các dialog có liên
quan.
Tôi không giám chắc đó là gì với Apple và nh
ững dialog bị thoát
không mong đợi. Dường như khá đơn giản trong việc làm cho
các dialog này làm việc như mong đợi. Tuy nhiên sự việc bên
ngoài lại không diễn ra như vậy. Apple đã tạo thêm lộn xộn và
tạo lỗi cho tính năng đã có lịch sử lâu đời.
Sự lộn xộn dialog thoát không mong đợi
Sau một hành động thoát không mong đợi, một dialog sẽ xuất
hiện với ba tùy chọn: Ignore, Reopen và Report (xem hình bên
dưới).


Kích Report, một dialog khác sẽ xuất hiện với ba tùy chọn
khác: Show Details, Don’t Send, và Send to Apple (như hình
bên dưới).

Kích Send to Apple, một sheet sẽ sổ xuống và ở đó bạn có thể
chọn Agree hoặc Disagree để gửi các triệu chứng cũng như các
thông tin sử dụng đến có liên quan Apple (hình bên dưới).

Bất cứ lựa chọn nào được chọn, bạn cũng có thể kích hoạt hoặc
vô hiệu hóa hộp kiểm “Don’t ask me again”. Nó được kích hoạt
mặc định. Đây chính là tiêu điểm cho mối quan tâm của chúng
ta. Nếu để kích hoạt, thời điểm tiếp theo khi một lỗi thoát không
mong đợi xảy ra và bạn kích Send to Apple, hộp thoại
Agree/Disagree sẽ không xuất hiện (chính xác như được ngụ ý
bởi “Don’t ask me again”).
Tuy nhiên giả định bạn thay đổi quan điểm; chẳng hạn như
muốn chuyển từ Agree sang Disagree. Bạn có thể thực hiện
điều này như thế nào nếu không có sheet sổ xuống để cho phép
bạn thực hiện thay đổi?

Câu trả lời là khởi chạy Console và chọn Preferences. Trong
cửa sổ mở ra (hiển thị phía bên phải), sẽ có một hộp kiểm
“Automatically send anonymous and diagnostic usage data to
Apple”. Nếu vô hiệu hóa tùy chọn này, Agree/Disagree sheet s

xu
ất hiện lại ở thời điểm tiếp theo khi bạn gặp phải một lỗi thoát
không mong đợi.
Chí ít đó là cách nó được giả định và đã làm việc. Tuy nhiên đối
với trường hợp của tôi, tùy chọn đã bị chuyển xám màu và

không thể thay đổi. Điều đó có nghĩa không có cách nào tôi có
thể gặp lại Agree/Disagree sheet – và như vậy không có cách
nào có thể thay đổi lựa chọn trước đây của mình.
Lưu ý: Trong Mac OS X 10.6.2, Preferences thay vì cung cấp
một nút Reset cho Diagnostic Reporting. Nút này c
ũng cung cấp
chức năng cơ bản như mục “Automatically send…” trong
10.6.3.
Làm việc với file plist
Một giải pháp là vô hiệu hóa hộp kiểm “Don’t ask me again”
mỗi lần. Tuy vậy, sau một chút tìm tòi thử nghiệm, tôi đã phát
hiện ra cách có thể dẫn tới thành công thậm chí nếu đã chọn
“Don’t ask me again”.
Đó là file .plist dùng để phát hiện xem hộp chọn Console liệu đ
ã
được kích hoạt và xem Agree/Disagree sheet liệu có sổ xuống
hay không. Nó được gọi là com.apple.SubmitDiagInfo.###,plist
(ở đây ### biểu thị chuỗi hex duy nhất đối với máy tính của
bạn). Bạn sẽ tìm thấy file .plist trong thư mục
Library/Preferences/ByHost của thư mục Home. Nếu xóa file
này, Agree/Disagree sheet sẽ xuất hiện lại vào lần tiếp theo khi
một lỗi thoát không mong đợi xuất hiện.
Tuy cách thức này cho phép bạn thay đổi lựa chọn đã thực hiện
trước đó, nhưng nó không phải là một bản vá vĩnh viễn. Hộp
kiểm trong Preferences sẽ vẫn bị xám màu khi b
ạn thay đổi quan
điểm của mình lần nữa. Tuy nhiên sau khi tìm hiểu thêm, tôi đã
tìm ra chính xác những gì đã làm cho nó diễn ra như vậy.
Nếu mở file .plist trong Property List Editor, bạn sẽ thấy hai
thuộc tính Boolean giống nhau: AutoSubmit và AutoSubmitV2.

(sau đó là một thuộc tính mới trong 10.6.3.)

AutoSubmit xuất hiện để phát hiện xem hộp kiểm Console có
thể bị thay đổi khi thích hợp hay không. AutoSubmitV2 xuất
hiện để xác định xem Agree/Disagree sheet có sổ xuống hay
không. Về mặt lý tưởng, các giá trị cho hai thuộc tính này sẽ
tương xứng. Tuy nhiên điều này không hẳn lúc nào cũng vậy.
Những gì có thể xảy ra, cho ví dụ, là AutoSubmitV2 được kích
hoạt nhưng AutoSubmit thì không. Điều này sẽ dẫn đến tình
huống được miêu tả ở trên, nơi sheet không sổ xuống nhưng tùy
chọn Console đưa nó trở lại lại không thể lựa chọn.
Dòng cuối cùng là, không có cách nào tôi có thể kích hoạt cả
“Don’t ask me again” và ngăn chặn triệu chứng trả về. Lúc này,
nếu phát hiện thấy những điều tương tự, bạn chỉ có thể sử dụng
file .plist hoặc hy vọng một bản vá trong Mac OS X 10.6.4.
Giao diện người dùng của các dialog
Ngay cả khi bỏ qua lỗi này, giao diện người dùng của dialog
thoát không mong đợi có thể sử dụng một số điều chỉnh.
Cho ví dụ, bạn có thể chọn Ignore từ dialog đầu tiên. Nếu như
vậy, không có dữ liệu nào gửi đến Apple.
Nếu chọn Report, bạn có thể kích Don’t Send từ dialog thứ hai
khi nó xuất hiện. Điều này cũng có nghĩa rằng không có dữ liệu
nào được gửi đến Apple.
Nếu khăng khăng và chọn Send to Apple, bạn sẽ nhận được tùy
chọn Disagree (đây là lần thứ ba, có nghĩa rằng dữ liệu của bạn
sẽ không được gửi đến Apple, thậm chí bạn đã chọn gửi dữ
liệu).
Tất cả dường như có một chút lộn xộn và rườm rà. Liệu nó có
thể được đơn giản hóa – có lẽ bằng cách cung cấp ngay ban đầu
ba tùy chọn được liệt kê trong bài báo hỗ trợ của Apple có liên

quan: Automatic Reporting, No Reporting và Ask Each Time?

×