سونی سال 2012 اولین گوشی دوهستهای خود را معرفی کرد اما تنها چند هفته بعد از معرفی سونی رقابت بین 4 هستهایها شروع شد. اما سونی هم مانند دیگر کمپانیها مشتاق برتر بودن است بنابراین سال 2013 را با دو گوشی 4 هستهای به نام Xperia Z و Xperia ZL شروع کرد. سونی Xperia Z که قبلا در شایعات با نام Yuga شناخته شده بود، شروع دوباره سونی است.
صفحه نمایش این گوشی به یک صفحه نمایش 5 اینچی با کیفیت Full HD (1080p) مجهز است. اما Full HD به چه معناست؟ در اینجا 1080p این معنی را میدهد که هر اینچ از این صفحه نمایش 440 پیکسل مجزا دارد بنابراین با چشم عادی شما نمیتوانید پیکسلها را تشخیص دهید. در ضمن اینکه این صفحه نمایش به نسل دوم موتور براوایای سونی موبایل مجهز است که باعث بهتر شدن کیفیت عکسهایی که در صفحه نمایش نشان داده میشوند خواهد شد و عکسها و فیلمها را شارپتر نشان داده و رنگها را مدیریت کرده و نویز موجود در عکسها و فیلمها را کاهش میدهد. تمام اینها این معنی را میدهد که با یک صفحه نمایش فوق العاده ساخت یکی از بزرگان در امر تولید تکنولوژی صفحه نمایش روبرو هستید که میتوانید از کیفیت آن اطمینان کامل را داشته باشید.
دوربین سونی همیشه در امر ساخت دوربینهای عکاسی پیش قدم بوده و گوشیهایش نیز در این زمینه بسیار خوب عمل میکنند. این گوشی علاوه بر این صفحه نمایش بسیار عالی، به یک دوربین 13 مگاپیکسلی با سنسورExmor RS مجهز است که قادر به عکسبرداری با کیفیت 4128x3096 پیکسل است و در کنار آن یک فلش LEDنیز قرار دارد. دو سنسور Exmor RS باعث میشود تا عکسهایی که توسط این دوربین گرفته میشوند هم در نور کم و هم در جایی که نور پس زمینه زیاد است بسیار شارپ و واضح باشند. این دوربین قابلیت ضبط ویدئو با کیفیت 1080p را دارد و علاوه براین ویژگیهای دیگری از جمله تشخیص چهره، تشخیص لبخند،پانوراما و برچسب گذاری جغرافیایی نیز در آن گنجانده شده است در این گوشی همچنین نرم افزار عکاسی در دوربین نیز بروزرسانی شده است و حالت HDR برای ویدئو را نیز فراهم کرده است.
پردازنده، رم و حافظه در داخل این سوپرفون سونی یک پردازشگر 4 هستهای Snapdragon کوآلکام با حداکثر سرعت 1.5 گیگاهرتز قرار گرفته است و در کنار این پردازنده قوی یک رم 2 گیگابایتی برای روان تر شدن گوشی نیز تعبیه شده است. حافظه داخلی گوشی نیز 16 گیگابایت است که به علت پشتیبانی از درگاه حافظه خارجی تا 32 گیگابایت امکان اضافه کردن حافظه دستگاه وجود دارد.
طراحی سونی Xperia Z در اندازه 139 x 71 x 7.9 ساخته شده و وزنی برابر 146 گرم دارد. همانظور که میبینید ضخامت این گوشی بسیار کم است که برای یک گوشی با چنین صفحه نمایش با کیفیتی یک حسن بزرگ به حساب میآید. سونی بر روی طراحی این گوشی بسیار زحمت کشیده و نام OmniBalance را بر طراحی آن نهاده است و ادعا میکند که تمرکز اصلی در طراحی این گوشی بیشتر بر روی ایجاد تفارن و توازن در تمام زمینهها بوده است. جنس بدنه گوشی در Xperia Z از شیشه ساخته شده از الیاف پلی آمید است و سونی ادعا میکند جنس این شیشه همان موادی است که در اتومبیل برای جایگزینی آهن استفاده میشود که این شیشه ضد خش و ضد ضربه نیز است و استفاده از شیشه در طراحی این گوشی به آن ظاهری بسیار شیک را بخشیده است به خصوص که علاوه بر شیشه در اطراف آن از آلومینیوم برای قسمتهای کناری استفاده شده است که حس در دست گرفتن یک گوشی گرانقیمت و یک گوشی پرچمدار را به کاربر القاء میکند.
پورتها و درگاههای ارتباطی در کناره های این گوشی یک پورت MHL USB، درگاه سیم کارت میکروسیم و درگاه حافظه خروجی microSD، جک صدایی 3.5 میلیمتری، دکمه مخصوص عکاسی و دکمه کم و زیاد کردن صدا به همراه دکمه پاور گوشی که بسیار زیبا طراحی شده است قرار دارند. در اینجا به علت ضد آب بودن و ضد گرد و غبار بودن گوشی Xperia Zدرگاههای این گوشی با یک پوشش پوشانده شدهاند.
امکانات ارتباطی این گوشی امکانات ارتباطی بسیار خوبی نیز دارد از جمله این امکانات میتوان به قابلیت پشتیبانی از LTE و دو باند Wi-F اشاره کرد به خصوص اینکه از ویژگی NFC نیز به خوبی بهره گرفته است. با استفاده از NFC سونی یک ویژگی به نام One-Touch را معرفی کرده است و واین ویژگی به این صورت عمل میکند که اگر شما گوشی خود را به یک اسپیکر وایرلس تماس دهید و سپس آن را از اسپیکر جدا کنید به صورت بی سیم آهنگهای شما یر روی اسپیکر پخش خواهند شد و یا اگر گوشی خود را با کنترل تلویزیونهای سازگار با این تکنولوژی تماس دهید و سپس جدا کنید تمام محتویات صفحه نمایش گوشی شما به سرعت بر روی صفحه تلویزیون نشان داده میشوند.
نرم افزار این گوشی با اندروید 4.1.2 ارائه میشود که در آینده به اندروید 4.2 نیز بروزرسانی خواهد شد. همچنین در این گوشی یک نرم افزار جدید جای گرفته که به شما امکان میدهد تمام شبکههای اجتماعی خود را در یک برنامه کارآمد با یک ظاهر زیبا داشته باشید. این نرم افزار که Sociallife نام دارد جایگزین نرم افزار معروف سونی با نامTimescape خواهد شد شاید در کل کارآیی هر دو نرم افزار یکسان باشد اما در ظاهر تفاوتهایی ایجاد شده و کارکردن با آن بسیار آسانتر و لذت بخش تر شده است.
باتری باتری Xperia Z یک باتری 2330 میلی آمپری است که 11 ساعت مکالمه و 550 ساعت زمان آماده به کار را در حالت 2G را پشتیبانی میکند، در اینجا یک ویژگی جدید با نام STAMINA اضافه شده است، کارآیی این ویژگی این است که زمانی که شما صفحه نمایش گوشی خود را خاموش میکنید تبادل دیتاها قطع میشود و اگر بخواهید که بعضی برنامهها اجازه دسترسی به اینترنت در زمانی که صفحه نمایش خاموش میشود را داشته باشند به آسانی میتوانید آن برنامه را در لیست سفید قرار دهید تا از دیتاها استفاده کند. این ویژگی به عمر بیشتر باتری بسیار کمک خواهد کرد.
تفاوت دو گوشی Xperia Z و Xperia ZL گوشی Xperia ZL نیز همین ویژگیهایی که در مورد Xperia Z ذکر کردیم در خود دارد اما تفاوتهای اندکی نیز در این دو گوشی دیده میشود. تفاوت دو گوشی Xperia Z و Xperia ZL :
Xperia Z Xperia ZL
Xperia ZL Xperia Z مزایا طراحی بسیار زیبا و ترکیبی از شیشه و آلومینیوم صفحه نمایش بسیار با کیفیت و فول اچ دی در اندازه 5 اینچ دوربین بسیار با کیفیت 13 مگاپیکسلی رم 2 گیگابایتی پردازنده 4 هستهای معایب اندروید 4.1.2 باقی ماندن اثر انگشت بر قسمت پشت گوشی به آسانی
ابزار های مورد نیاز:
- Visual Studio 2010
- Windows Phone SDK 7.1
- اگر هم آپدیت جدید رو بگیرید Windows Phone SDK 7.1.1
توانایی های مورد نیاز :
- برنامه نویسی به یکی از زبان های #C و یا VB.Net
- برنامه نویسی بوسیله SilverLight و یا WPF
اصطلاح هایی که من در این آموزش بکار میبرم :
- VS -->Visual Studio
- WP --> Windows Phone
- این مطب با زبان #C میباشد ولی تفاوتی با VB ندارد و میتوانید از کد های مشابه در VB هم استفاده کنید.
توجه : اگر حداقل زبان #C و یا VB.Net را بلد نیستید این مطب را نخوانید
بعداز نصب ابزار های بالا ، به ترتیب .
حالا میخوایم برنامه Hello World که هر برنامه نویسی میشناستش رو بنویسیم.
اول VS رو اجرا کرده و بر روی New Project کلیک کنید.
ساخت پروژه :
خوب حالا توی صفحه باز شده از سمت چپ وارد دسته زبان دلخواه خود شده و بر روی SilverLight for Windows Phone کلیک کنید.
حالا سمت راست میتونید انواع مختلف پروژه هایی که میشه برای WP ساخت رو ببینید :
در پایین نام پروژه را HelloWorldApp نوشته و بر روی OK کلیک کنید.
حالا یک صفحه ظاهر میشود که ورژن SDK رو از شما میپرسه.
داخلش Windwos Phone OS 7.1 و 7.0 هست. که بهتر است همان 7.1 را انتخاب کرده و OK کنید.
حالا یک صفحه به شکل زیر ظاهر میشود که در سمت چپ ظاهر برنامه و سمت راست کد وجود دارد.
کد های سمت راست ، کدهای SilverLight هست که برای ظاهر برنامه از این کدها استفاده میشود. و کد های پشت برنامه همان #C و یا VB هستند.
ساخت برنامه :
حالا Toolbox را بیاورید . برای اینکار از منو View بر روی ToolBox کلیک کنید. و یا CTRL+W,X
در اینجا لیستی از کنترل هایی که میتوانید برای WP استفاده کنید وجود دارد.
بر روی Button کلیک کرده و آن را کشیده و بر روی فرم قرار دهید.
شما میتوانید Button را در هر مکان از صفحه Design کشیده و قرار دهید.
آن را در وسط صفحه قرار دهید.
حالا بیایید متن روی دکمه را تغییر دهیم. از سمت راست در Propertice بر روی Content رفته و محتویات آن را به Click Me! تغییر دهید و Enter را فشار دهید.
حالا مثل مراحل قبل ولی اینبار یک TextBlock را بر روی فرم قرار دهید و هر چیزی که در قسمت Text آن در Propertice هست را پاک کنید که به یک مستطیل خالی تبدیل شود.
حالا بر روی Button ای که بر روی فرم قرار دادید دو کلیک کنید تا یک فایل دیگر به نام MainPage.Xaml.cs باز شود.
خوب همانطور که میبینید یک Event Handler برای Click دکمه هم ایجاد شده
شما فقط نیاز دارید یک خط کد را بنویسید به صورت زیر :همچنین فراموش نشود که نام برنامه را با کلیک بر روی TextBlock آن که در بالا قرار دارد را هم تغییر بدهید.کد:private void button1_Click(object sender, RoutedEventArgs e) { textBlock1.Text = "Hello World!!!"; //خطی که باید اضافه شود }
حالا برنامه شما آمادست. با زدن بر روی علامت Play بالا و یا دکمه F5 برنامه شما اجرا میشود.
بعد از اجرای برنامه بر روی دکمه "Click Me!!!" کلیک کرده و میبینید که متنی که در برنامه نوشتید پایین ظاهر میشود.
به همین راحتی یک برنامه نوشتید.
خوب حالا وقت این است که ببینیم وقتی شما یک برنامه ویندوز فون میسازید چه اتفاق هایی می افتد.
Solution Explorer:
با ساخت پروژه ، VS این فایل ها را برای شما میسازد که تک تک آنها توضیح میدهم :
فایلهای App.xaml و MainPage.xaml دو فایل XAML هستند و فایلهای App.xaml.cs , MainPage.xaml.cs دو فایل #C هستند (یا App.xaml.vb هست که فایل VB.Net میباشد)
دو فایل با پسوند CS فایلهای کد پشت صحنه مربوط به فایلهای XAML هستند.
فایلهای دیگر نیز عکس هستند :
- ApplicationIcon.png : فایل آیکون برنامه شما در ویندوز فون.
- Background.png : فایل عکسی هست که وقتی برنامه شما Pin میشود نمایش داده میشود.
- SplashScreenImage.png : عکسی که وقتی برنامه شما در حال لود شدن میباشد نمایش داده میشود.
در زیر References نیز لیستی از کتابخانه هایی که (LIB , Assembly) برنامه شما با آنها کار میکند آورده شده است.
در زیر بخش Propertice این فایلها را میبینید :
- AppManifest.xml : فایل Manifest برنامه که برای ساخت پکیج برنامه از آن استفاده میشود.
- AssemblyInfo.cs : فایلی که اطلاعاتی از قبلی ورژن برنامه نام برنامه و ... میباشد.
- WMAppManifest.xml : فایلی که Manifestها و Meta Data هایی مرتبط با Silverlight قابل اجرا بر روی ویندوز فون میباشد .
App.xaml و App.xaml.cs :
حالا فایل App.xaml.cs را باز کنید. میبینید که یک Namespace به اسم پروژه شما از نوع کلاس App که معرف کلاس Silverlight برنامه است تعریف شده است.
اینجا جایی هست که عملیات شروع برنامه و اتمام برنامه مدیریت میشوند :حالا فایل App.xaml را باز کنید.کد:namespace HelloWorldApp { public partial class App : Application { public PhoneApplicationFrame RootFrame { get; private set; } public App() { ... } ... }}
شما آن را به فرمت xml میشناسید ولی این یک فایل XAML هست .
شما باید از این فایل برای نگه داری منابعی مانند : رنگ ، رنگ های از نوع Brush و استایل هایی که در برنامه استفاده میکند.
دقت کنید که Element اصلی Application میباشد که شامل 4 تعریف XML میباشد (Xmlns)اولین تعریف : تعریف استاندارد Silverlight میباشد که به کامپایلر این اجازه را میدهد که کلاس های Silverlight مانند همین Application را شناسایی کند.کد:<Application x:Class="HelloWorldApp.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone" xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"> ... </Application>
دومین تعریف : تعریف خود زبان XAML میباشد.
سومین تعریف : کنترل های ویندوز فون
چهارمین : ظاهر و...
این دو فایل هنگام کامپایل شدن ، VS آنها را کامپایل کرده و فایل دیگری به نام App.g.cs میسازد.
در زمان اجرای برنامه این دو فایل هستند که تعیین میکنند باید یک برنامه با سایز 480x800 ساخته شود(فراموش نکنید در ویندوز فون 7 این سایز ثابت است)
و یک سری توضیحات دیگر در سایت منبع هست که زیاد مهم نیست :D
MainPage.xaml , MainPage.xaml.cs :
این فایل همان صفحه اصلی برنامه شما است که در آن یک سری کد هم نوشتید.
فایل MainPage.xaml.cs را که باز کنید که کلاس میبینید که از نوع PhoneApplicationPage تعریف شده است.فایل MainPage.xaml را که باز کنید ، چهار تعریف اول همان چهار تای قبلی است.کد:namespace HelloWorldApp { public partial class MainPage : PhoneApplicationPage { public MainPage() { InitializeComponent(); } ... } }
بعد از آن d به منظور Designer و mc به منظور Markup Compability میباشد که از مزیت های برنامه نویسی XAML میباشد.
(توضیحات کامپایل و اجرا همانند قبل است)شما یک سری تنظیمات را در فایل MainPage.xaml میبینید. مانند FontFamily , FontSize , Foreground که با تغییر آنها ، تنظیمات کل صفحه عوض میشود.کد:<phone:PhoneApplicationPage x:Class="HelloWorldApp.MainPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone" xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d" d:DesignWidth="480" d:DesignHeight="768" FontFamily="{StaticResource PhoneFontFamilyNormal}" FontSize="{StaticResource PhoneFontSizeNormal}" Foreground="{StaticResource PhoneForegroundBrush}" SupportedOrientations="Portrait" Orientation="Portrait" shell:SystemTray.IsVisible="True"> <Grid x:Name="LayoutRoot" Background="Transparent"> ... </Grid> </phone:PhoneApplicationPage>
که بعد از آن Grid , که در آن یک StackPanel میباشد به اسم TilePanel و چند TextBlock و یک Grid دیگر به نام ContentPanel میبینید.وقتی شما مثلا یک TextBox را در محیط Design (طراحی) میکشید و قرار میدهید ، خود VS به صورت خودکار خطر مربوط به آن را در این قسمت ها مینویسد.کد:<Grid x:Name="LayoutRoot" Background="Transparent"> <Grid.RowDefinitions> <RowDefinition Height="Auto"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <!--TitlePanel contains the name of the application and page title--> <StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28"> <TextBlock x:Name="ApplicationTitle" Text="HELLO WORLD APP" Style="{StaticResource PhoneTextNormalStyle}"/> <TextBlock x:Name="PageTitle" Text="page name" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/> </StackPanel> <!--ContentPanel - place additional content here--> <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"> <Button Content="Click Me!" Height="72" HorizontalAlignment="Left" Margin="146,143,0,0" Name="button1" VerticalAlignment="Top" Width="160" Click="button1_Click" /> <TextBlock Height="59" HorizontalAlignment="Left" Margin="146,287,0,0" Name="textBlock1" Text="" VerticalAlignment="Top" Width="160" /> </Grid> </Grid>
به عنوان مثال همان دکمه ای که گذاشتید و درونش نوشتید Click Me! را اینجا میبینید.
مقدار Content را نیز میتوانید از همینجا تغییر دهید (بجای منوی Propertice)
اگر بر روی Button دابل کلیک کنید خود VS برای شما یک Event Handler میسازد که میتوانید مقدار آن را در رویدادی که در قسمت کد نویسی به عنوان Click هست ببینید.
از این قسمت شما قابلیت های بیشتری برای طراحی نیز در اختیارتان میباشد(ولی خوب سخت تر نیز هست)
در اصل کد نویسی Silverlight همین قسمت میباشد.
وقتی شما F5 میزنید در فولدر Bin->Debug یک فایل XAP نیز ساخته میشود.
که این فایل برنامه شماست میتوانید آن را خودتان بر روی گوشی نصب کنید.