2012-04-20 15 views
7

Tôi đang tạo trò chơi trong Flash dành cho Android với AS3. Tôi muốn người dùng biết rằng anh ấy đã nhấn nút bằng cách làm cho thiết bị rung trong một giây ngắn. Ai đó có thể giải thích cho tôi làm thế nào tôi có thể làm điều này xảy ra? Tôi có cần phải nhập một lớp cụ thể và mã phải như thế nào?Làm cách nào để thiết bị của tôi rung?

Cảm ơn trước!

+0

tôi phải 1 câu hỏi này, chỉ cho danh hiệu! :) – weltraumpirat

Trả lời

0

Cảm ơn câu trả lời. Họ làm cho tôi nghiên cứu thêm một chút về chủ đề này. Những gì tôi thấy được điều này:

Trước khi bạn có thể sử dụng:

var vibe:Vibration; 
if(Vibration.isSupported){ 
    vibe = new Vibration(); 
    vibe.vibrate(500); 
} 

Bạn phải vào "Edit Settings ActionScript"> "THƯ VIỆN Path"> "Browse đến file SWC"

Ở đó bạn có phải đặt 2 file này trong:

VibrationActionScriptLibary.swc - Bạn có thể nhận được với this file zip

com.ado be.extensions.Vibration.swc - Trong cùng một tệp và thư mục zip. Bạn phải thay đổi .ane thành .swc

Tiếp theo bạn phải import com.adobe.nativeExtensions.Vibration; Chỉ cần đặt dòng đó với các hàng nhập khác.

Đây là tất cả những gì bạn phải làm trong Flash. (Bên cạnh việc mã hóa trò chơi thực tế ...)

Tiếp theo, mở tệp myApp-app.xml. Trong xml, cuộn lên và kiểm tra xem liên kết đến ns.adobe.com có ​​kết thúc bằng 3.0 (hoặc cao hơn) hay không. Nếu không, hãy thay đổi thành 3.0. Adobe AIR 3.0 hoặc cao hơn là bắt buộc đối với tiện ích mở rộng gốc.

Cuộn xuống phần phía dưới nơi bạn thấy <initialWindow>. Sau thẻ đóng bạn thêm:

<extensions> 
    <extensionID>com.adobe.Vibration</extensionID> 
</extensions> 

Nếu bạn cuộn xuống dưới, bạn sẽ thấy thứ gì đó như <android>. Trong manifestAdditions, bạn phải thêm quyền cho thiết bị để thực sự cho phép thiết bị có thể sử dụng chức năng rung.

Nếu chưa có đường dây <![CDATA[manifest> ở đó, bạn phải thêm nó. Nếu bạn đã thêm nó/hoặc nếu nó đã có, bạn phải thêm vào sự cho phép.Này được thực hiện với android:name="android.permission.VIBRATE" Cuối cùng bạn muốn chắc chắn rằng nó trông giống như sau:

<![CDATA[<manifest> 
    <uses-permission android:name="android.permission.VIBRATE"/> 
</manifest>]]> 

Sau này bạn có thể lưu và đóng file xml.

Sau khi bạn đã làm tất cả điều này .fla của bạn có thể thất bại trong việc xuất bản trong Flash từ Flash không hỗ trợ những thứ chúng ta vừa điều chỉnh. Tuy nhiên, chúng tôi vẫn có thể xuất bản .fla với CMD (dành cho Windows). Đây cũng là nơi hỗ trợ người dùng Mac của tôi kết thúc, thật đáng buồn. Trong cmd bạn duyệt đến thư mục dự án của bạn. thư mục dự án của tôi là trên máy tính để bàn của tôi, vì vậy tôi đã gõ cd desktop, cd games, cd tilt android game. Sau khi tôi duyệt đến thư mục của mình, tôi đã nhập dòng lệnh này ...

AdobeAIRSDK\bin\adt -package -target apk -storetyp pkcs12 -keystore YOUR_LICENCE.p12 myApp.apk myapp-app.xml myapp.swf -extdir extensionDir 

Đảm bảo bạn có thư mục AdobeAIRSDK trong thư mục dự án của bạn. Nếu tất cả các bên trên (với cmd) là một chút mơ hồ đi here và xem video của mình và video của mình về cách biên dịch một ứng dụng ANE với dòng lệnh cho hệ điều hành của bạn. (Đó là những gì tôi đã làm ở nơi đầu tiên.)

Nếu bạn có và biểu tượng cho ứng dụng của bạn, chắc chắn rằng họ đang ở trong một thư mục có tên "biểu tượng" trong thư mục dự án của bạn. Nếu các biểu tượng của bạn nằm trong một thư mục như vậy chỉ cần dán tên thư mục ở cuối dòng lệnh.

Ứng dụng nên công bố trong thư mục dự án của bạn.

Nếu bạn có thắc mắc về vấn đề này, hãy chắc chắn bạn xem video tôi liên kết.

+0

Bạn nên đăng câu trả lời này dưới dạng bản chỉnh sửa cho câu hỏi của mình chứ không phải là câu trả lời. Bạn nên cung cấp tín dụng cho @ Vinayak.B để có giải pháp đúng, vì đó là giải pháp đúng. Bạn đã yêu cầu mã và * không * cách kết nối cơ sở mã. Bất kỳ lập trình viên nào ở đây đều cho rằng bạn đã biết cách triển khai mã hoặc sẽ thực hiện thẩm định để thực hiện nó. Vì vậy, câu trả lời của bạn là * không * câu trả lời đúng nhất cho câu hỏi của bạn. – iND

10

Để sử dụng phần mở rộng Rung, ứng dụng AIR thực hiện các thao tác sau:

Kiểm tra xem tiện ích có được hỗ trợ khi gọi được hỗ trợ không. Làm cho thiết bị rung khi gọi rung(), chỉ định thời lượng rung theo mili giây làm tham số.

var vibe:Vibration; 
if (Vibration.isSupported) 
{ 
    vibe = new Vibration(); 
    vibe.vibrate(2000); 
} 

các ứng dụng Android Đối với một ứng dụng Android, bao gồm sự cho phép rung trong tập tin mô tả ứng dụng của bạn:

Permission Android: <uses-permission android:name="android.permission.VIBRATE"/>

tham khảo: http://www.adobe.com/devnet/air/native-extensions-for-air/extensions/vibration.html

+0

Nếu tôi thêm điều này vào mã của tôi, nó nói rằng loại không được tìm thấy: Rung, hoặc nó không phải là một hằng số biên dịch-thời gian. –

+0

Bạn cần phải bao gồm một referenece cho cả ane và swc trong dự án của bạn. Bạn đang sử dụng trình tạo flash 4.6? –

+0

Tôi chỉ sử dụng Flash CS5.5. Để kiểm tra nếu nó hoạt động trên điện thoại của tôi, tôi xuất bản nó với Flash. –