App Development API Reference

by 2 contributors:

ফায়ারফক্স ওএস অ্যাপ ডেভেলপ করার জন্য আপনার যেসব কোড-লেভেল রেফারেন্স ডকুমেন্টেশন প্রয়োজন হবে, নিচে তার একটি তালিকা দেয়া হল। ওয়েব এপিআই এবং মেথড সমূহ দ্রুত অনুসন্ধান এবং ব্রাউজ করার জন্য dochub.io তে যেতে পারেন। ওয়েব প্ল্যাটফর্মের প্রায় সব ফিচার অনুসন্ধানের জন্য এই সাইট টি MDN এর API ব্যবহার করে।

ফায়ারফক্স ওএস এর ভিত্তি

একটি ফায়ারফক্স ওএস অ্যাপ আলে একটি সাধারণ মুক্ত ওয়েব অ্যাপ

অ্যাপ ম্যানিফেস্ট
ম্যানিফেস্ট আপনার অ্যাপ এর ব্যাখ্যা দেয়। কিভাবে ম্যানিফেস্ট কাজ করে, কিভাবে ম্যানিফেস্ট তৈরি করতে হয়, এই গাইড টি তা বর্ণনা করে।
অ্যাপ ইন্সটল এবং ম্যানেজমেন্ট এপিআই
অ্যাপ ইন্সটল করার জন্য এবং সেগুলো ব্যবস্থাপনা করার জন্য আপনি যে প্রোগ্রাম্যাটিক ইন্টারফেস ব্যবহার করবেন।
অফলাইনে কাজ করা
ইন্টারনেট সংযোগ যখন থাকবে না, তখন আপনার অ্যাপটি ঠিকঠাক কাজ করছে এটা নিশ্চিত করতে যেসব কৌশল এবং প্রযুক্তি ব্যবহার করবেন।
অ্যাপ এর প্রকারভেদ
এই নিবন্ধটি অ্যাপ এর প্রকারভেদ বর্ণনা করেঃ হোস্টেড, প্রিভিলেজড, এবং সার্টিফায়েড। সংবেদনশীল ডিভাইস এপিআই ব্যবহার করার জন্য আপনার সার্টিফায়েড অথবা প্রিভিলেজড অ্যাপ প্রয়োজন হবে। প্রিভিলেজড এবং সার্টিফায়েড অ্যাপ হচ্ছে প্যাকেজড অ্যাপ।
অ্যাপ পারমিশন সমূহ
ভালো অ্যাপ তৈরি করার জন্য ডিভাইসের এপিআই ব্যবহারের অধিকার থাকাটা প্রধান একটি সুবিধা। এখানে আপনি কি কি এপিআই ব্যবহার করতে পারবেন এবং কিভাবে সেগুলো ব্যবহার করবেন, সেগুলো বর্ণনা করা হয়েছে।

লেআউট এবং কাঠামো

রেস্পন্সিভ ডিজাইনের ভিত্তি
রেস্পন্সিভ ডিজাইনের বেসিক শিখুন। এটা আধুনিক অ্যাপ এর লেআউট তৈরি করার জন্য প্রয়োজনীয় বিষয়।
মিডিয়া কুয়েরি সমূহ
One of the most important technologies in responsive app design is the media query. Media queries allow your app to respond to screen size, resolution, device orientation, and many other environment variables using declarative CSS rules or JavaScript listeners. Also see Using media queries and MediaQueryList.
Mobile first
Often when creating responsive application layouts, it makes sense to create the mobile layout as the default, and build wider layouts on top.
Flexible boxes
CSS flexible boxes let you configure your app's user interface to automatically adjust the positioning and sizes of elements based on the size and orientation of the display.

Drawing and animation

CSS transforms
CSS transforms let you rotate, scale, and zoom HTML content, taking advantage of hardware acceleration where available, all without relying on JavaScript code.
CSS transitions
CSS transitions let you animate changes to your CSS. Once a transition effect is configured, changes to your CSS occur over a period of time instead of instantaneously. This makes it possible to easily and efficiently create a wide variety of visual effects in your apps.
CSS animations
CSS animations let you animate changes to your document on a more fundamental level, using keyframes to precisely configure the animation effect. This also lets you create looping animation effects rather than effects that happen just once, as is the case with transitions, all without relying on JavaScript.
HTML canvas
The HTML <canvas> element provides a 2D graphics workspace for you to draw in. This has many uses, including 2D games.
WebGL
WebGL is a Web-friendly version of OpenGL ES that lets your app offer hardware-accelerated 3D graphics.
SVG
Scalable Vector Graphics (SVG) is a technology that lets you draw graphics using vectors instead of bitmapped images. This is great for scalability, presenting diagrams and charts, and for high-quality, scalable user interfaces.

Firefox OS device APIs

These are emerging Web platform standards and device APIs crucial to Firefox OS app development and to Open Web Apps.

The following table gives the app manifest permissions for hosted and privileged apps. For more information see App permissions.

Manifest permission API name Description Minimum app type required access property Default granted Platform
alarms Alarm Schedule a notification, or schedule an application to be started. hosted none Allow FxOS
audio-capture GetUserMedia Obtain MediaStream from audio input devices, e.g. microphone.  This is needed to allow audio capture in Firefox OS 1.2+. hosted none Prompt (even for certified Apps) FxOS
audio-channel-alarm Audio Policy Alarm clock, calendar alarms. privileged none Allow FxOS
audio-channel-content Audio Policy Music, video. hosted none Allow FxOS
audio-channel-normal Audio Policy UI sounds, Web content, music, radio. hosted none Allow FxOS
audio-channel-notification Audio Policy New email, incoming SMS. privileged none Allow FxOS
browser Browser Enables the app to implement a browser in an iframe. privileged none Allow FxOS
contacts Contacts Add, read, or modify contacts from the address book on the device and read contacts from the SIM. privileged readonly, readwrite, readcreate, or createonly Prompt for all installed App types. FxOS
desktop-notification mozNotification for Gecko <22, Notification for Gecko 22+ Display a notification on the user's desktop. Note that this has changed, so for Gecko <22 (Firefox OS <1.2) you need to use mozNotification, while for Gecko 22+ (Firefox 1.2+) you need to use Notification. hosted none Prompt for Web content. Allow for all installed App types. FxOS, Android,
Desktop
device-storage:music Device Storage Add, read, or modify music files stored on the device. privileged readonly, readwrite, readcreate, or createonly Prompt FxOS
device-storage:pictures Device Storage Add, read, or modify picture files stored on the device. privileged readonly, readwrite, readcreate, or createonly Prompt FxOS
device-storage:sdcard Device Storage Add, read, or modify files stored on the device's SD card. privileged readonly, readwrite, readcreate, or createonly Prompt FxOS
device-storage:videos Device Storage Add, read, or modify video files stored on the device. privileged readonly, readwrite, readcreate, or createonly Prompt FxOS
fmradio FM Radio Control the FM radio. hosted none Allow FxOS
geolocation Geolocation Obtain the current location of the user. hosted none Prompt (even for certified Apps) FxOS, Desktop, Android
keyboard Keyboard Allows the app to act as a virtual keyboard by listening to focus change events in other apps. privileged none Allow FxOS
mobilenetwork Mobile Network Obtain mobile network information (MCC, MNC, etc.). privileged none Allow FxOS
push Simple Push Enable an app to wake up to receive notification. hosted none Allow FxOS
storage Storage Utilize storage (appcache, pinned apps, IndexedDB) without size limitations. See appcache, IndexedDB. hosted none Allow FxOS,
Desktop
systemXHR SystemXHR Allows anonymous (no cookies) cross-origin XHR without the target site having CORS enabled. Similar to the TCP Socket API but restricted to XHR, not just raw sockets, so it is slightly less risky. See XMLHttpRequest. privileged none Allow FxOS
tcp-socket TCP Socket Create TCP sockets and communicate over them. privileged none Allow FxOS,
Desktop
video-capture GetUserMedia Obtain MediaStream from video input devices, e.g. camera.  This is needed to allow  video capture in Firefox OS 1.4+. hosted none Prompt (even for certified Apps) FxOS

General Web APIs

Elements, events, network requests, storage and other standard Web APIs

Network requests - send and receive data with XMLHttpRequest
XMLHttpRequest is the DOM API used to send and receive information using HTTP, including for downloading files.
DOM events
The event reference provides a complete list of all the events that can be sent and received to interact with DOM objects.
Touch events
This documentation covers touch events in particular, which of course you are likely to encounter when developing apps for touchscreen devices.
Online & offline events
Allows your app to dynamically respond to changes in network connection availability.
History
Travers and manipulate the historical view state of your app with various commands - helpful in rewinding or advancing the user's current view
Audio
Embedding and manipulation of audio content with the HTML5 Audio Tag
Video
Embedding and manipulation of video content with the HTML5 Video Tag
Geolocation
Enables your app to request the user's current location and listen for location changes.
Screen orientation
Listen for high-level screen orentation changes between various portrait and landscape positions.
Device orientation
Allows your app to detect granular device orientation changes from on-device sensors.
IndexedDB
A database access layer for Web apps that provides a scriptable interface for storing and retrieving large sets of data on the user's device.
Storage
The Storage API family provides various way to persistently store limited amounts of simple data on a user's device.
  • localStorage
  • sessionStorage
  • Blob - An object that represents a file-like object of immutable, raw data. The data contained can be manipulated and mutated into several common formats (images, etc).
Web workers
Allows apps to run JavaScript code (which cannot touch the DOM or window object) in background threads to optimize performance and unblock UI rendering

Firefox Marketplace services

These documents and guides will help you learn how to publish your app and manage it on the Firefox Marketplace.

Submission API
The Submission API lets you validate your app, update your app, and fetch information about the apps available to be installed.
Marketplace API
All Marketplace-related documentation is centered here.

ডকুমেন্ট ট্যাগ এবং অবদানকারী

Contributors to this page: badsha_eee, chrisdavidmills
সর্বশেষ হালনাগাদ করেছেন: badsha_eee,
সাইডবার লুকানো