Farzad Sarseifi

نسخه پیش نمایش توسعه دهندگان اندروید O منتشر شد

2 ارسال در این موضوع قرار دارد

چندی قبل گوگل نسخه پیش نمایش توسعه دهندگان اندروید O را منتشر کرد که در واقع نخستین توزیع قابل دانلود از آن برای عموم محسوب می شود.

البته قبل از آنکه بیش از اندازه هیجان زده شوید باید خاطرنشان کنیم که طبق اعلام گوگل این نسخه صرفا برای توسعه دهندگان منتشر شده و «برای استفاده روزانه یا کاربری» مناسب نیست.

اولین پیش نمایش توسعه دهندگان اندروید جدید درست مانند هر ورژن دیگری که برای این قشر از کاربران عرضه می شود مملو از باگ است و «با مشکلات متعددی به لحاظ عملکرد و ثبات» روبروست.

Android-O-Developer-Preview-Android-Developers-1.thumb.png.580a637ac4db6293080658d9de599f47.png

گفتنی است این ورژن از اندروید روی دستگاه های زیر قابل نصب خواهد بود:

پیکسل و پیکسل اکس ال، پیکسل سی گوگل، نکسوس ۶ پی، نکسوس ۵ اکس و نکسوس پلیر.

برای دانلود ایمیج های این نسخه نیز می توانید از طریق این لینک اقدام نمایید و هشدارهای انتشار آن (شامل لیست طولانی از باگ ها) را هم می توانید از طریق این لیست دریافت نمایید.

خلاصه کلام اینکه حالا می توانید به شمایی کلی از امکانات و قابلیت های نسخه نهایی اندروید O دست پیدا کنید هرچند که هنوز نام اصلی آن مشخص نشده. در زیر فهرستی خلاصه وار از امکانات و قابلیت های این نسخه از اندروید را ملاحظه می کنید:

  • نوتیفیکیشن های پیشرفته (کاربران به کنترل بالایی روی انواع مختلف اعلان دست پیدا می کنند)
  • محدودیت های پس زمینه اپلیکیشن ها (برای بهبود عمر باتری)
  • نمایشگر تصویر در تصویر (با فراهم نمودن امکاناتی شامل مشاهده ویدیو در حین چت یا استفاده از دیگر اپلیکیشن ها)
  • آیکون های قابل انطباق
  • وسعت رنگ زیاد برای اپلیکیشن ها
  • پشتیبانی از کدک های صدای بلوتوثی باکیفیت

همانطور که گفته شد این نسخه از اندروید صرفا برای توسعه دهندگان منتشر شده با این همه در دسترس بودن آن نشانه ایست بر اینکه کاربران معمولی این سیستم عامل نیز به زودی می توانند از اندروید O استفاده نمایند.

 

 

منبع : http://dgto.ir/g28

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

بالاخره شرکت گوگل اسم نهایی اندروید ۸ را اعلام کرد. این نسخه از اندروید، Oreo نام دارد که نوعی بیسکوییت است. نسخه نهایی اندروید جدید هم از امروز برای دانلود روی گوشی‌ّهای پیکسل و نکسوس عرضه شده است.

مایکروسافت در گیمزکام ۲۰۱۷ دنباله یکی از بهترین بازی‌های استراتژی دنیا را معرفی کرد. بازی Age of Empires 4 که برای ویندوز ۱۰ ساخته می‌شود. این بازی را سازنده‌های مجموعه Company of Heroes میسازند.

به نظر میرسد گران‌ترین مدل گوشی گلکسی نوت ۸ نزدیک به ۱۲۰۰ دلار قیمت خواهد داشت. این مدل از ۶ گیگابایت رم و ۲۵۶ گیگابایت حافظه داخلی بهره می‌برد. گوشی جدید سامسونگ فردا معرفی خواهد شد.

 

Android 8.0 Oreo is here

Smarter, faster, and more powerful than ever.

OTA rollout is expected to arrive first to Pixel and Nexus devices

https://www.android.com

 

دانلود گیف اندروید Oreo

doc_2017-08-22_09-30-00.mp4

 

 

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط jonoob
      سلام
      وقت همگی بخیر
      من یک دیتا بیس دارم حدود 10 هزار ردیف و بیست ستون هست
      میخواهم از طریق چک باکس مشخص کنم در کدام ستون جستجو کند
      لطفا در صورت امکان کدنویسی مربوط اتصال به دیتابیس و سایر مواردی که مورد نیاز هست بفرمایید\
      من یک تازه کارم
      متشکرم
    • توسط hackn82
      سلام خدمت اساتید گرامی . 

      من یه برنامه نوشتن که برای یادگیری لغاته . وقتی کاربر لغتی رو به بخش علاقه مندی اضافه می کنه لغت نمایش داده نمیشه و باید برنامه رو مجدد اجرا کرد تا لغت انتخاب شده به بخش علاقه مندی اضافه/ حذف بشه . همچنین بعد از هر بار اجرا لیست لغات تکرار میشه ( مثلا بار دوم از هر کدوم 2 سری بار سوم از هرکدوم 3 سری و ... ) ایجاد میشه . ممنون میشم راهنماییم کنید . 
       
      package farmani.com.essentialwordsforielts.mainPage; import android.Manifest; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.content.pm.PackageManager; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.os.Build; import android.os.Environment; import android.support.annotation.NonNull; import android.support.design.widget.NavigationView; import android.support.design.widget.TabLayout; import android.support.v4.app.ActivityCompat; import android.support.v4.content.ContextCompat; import android.support.v4.view.ViewPager; import android.support.v4.widget.DrawerLayout; import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.Gravity; import android.view.MenuItem; import android.view.View; import android.widget.ImageView; import android.widget.Toast; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.util.ArrayList; import farmani.com.essentialwordsforielts.R; import farmani.com.essentialwordsforielts.search.ActivitySearch; public class MainActivity extends AppCompatActivity { public static Context context; public static ArrayList<Structure> list = new ArrayList<>(); public static ArrayList<Structure> favorite = new ArrayList<>(); DrawerLayout drawerLayout; NavigationView navigationView; ImageView hamburger; SQLiteDatabase database; String destPath; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.navigation_activity_main); if (Build.VERSION.SDK_INT >= 23) { if (ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { ActivityCompat.requestPermissions(MainActivity.this , new String[]{Manifest.permission.READ_EXTERNAL_STORAGE , Manifest.permission.WRITE_EXTERNAL_STORAGE} , 1); } else if (ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { ActivityCompat.requestPermissions(MainActivity.this , new String[]{Manifest.permission.READ_EXTERNAL_STORAGE , Manifest.permission.WRITE_EXTERNAL_STORAGE} , 1); } else { setupDB(); selectList(); selectFavorite(); Toast.makeText(MainActivity.this, "You grandet earlier", Toast.LENGTH_LONG).show(); } } if (!favorite.isEmpty()){ favorite.clear(); selectFavorite(); } else if (!list.isEmpty()){ list.clear(); selectList(); } context = getApplicationContext(); setTabOption(); drawerLayout = findViewById(R.id.navigation_drawer); navigationView = findViewById(R.id.navigation_view); hamburger = findViewById(R.id.hamburger); hamburger.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { drawerLayout.openDrawer(Gravity.START); } }); navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() { @Override public boolean onNavigationItemSelected(@NonNull MenuItem item) { int id = item.getItemId(); if (id == R.id.exit) { AlertDialog.Builder alertDialog = new AlertDialog.Builder( MainActivity.this); alertDialog.setTitle(R.string.exit); alertDialog.setMessage(R.string.exit_ask); alertDialog.setCancelable(false); alertDialog.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { finish(); } }); alertDialog.setNegativeButton(R.string.no, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { dialog.cancel(); } }); alertDialog.show(); } if (id == R.id.search) { Intent intent = new Intent(MainActivity.this, ActivitySearch.class); MainActivity.this.startActivity(intent); } return true; } }); } @Override public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { switch (requestCode) { case 1: { if (grantResults.length >= 2 && grantResults[0] == PackageManager.PERMISSION_GRANTED && grantResults[1] == PackageManager.PERMISSION_GRANTED) { Toast.makeText(MainActivity.this, "Access granted", Toast.LENGTH_LONG).show(); } } } } @Override public void onBackPressed() { if (drawerLayout.isDrawerOpen(Gravity.START)) { drawerLayout.closeDrawer(Gravity.START); } else { AlertDialog.Builder alertDialog = new AlertDialog.Builder( MainActivity.this); alertDialog.setTitle(R.string.exit); alertDialog.setMessage(R.string.exit_ask); alertDialog.setCancelable(false); alertDialog.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { finish(); } }); alertDialog.setNegativeButton(R.string.no, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { dialog.cancel(); } }); alertDialog.show(); } } private void setTabOption() { ViewPager viewPager = findViewById(R.id.viewpager); viewPager.setAdapter(new AdapterFragment(getSupportFragmentManager(), context)); TabLayout tabStrip = findViewById(R.id.tabs); tabStrip.setupWithViewPager(viewPager); } private void setupDB() { try { destPath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/ielts/"; File file = new File(destPath); if (!file.exists()) { file.mkdirs(); file.createNewFile(); CopyDB(getBaseContext().getAssets().open("md_book.db"), new FileOutputStream(destPath + "/md_book.db")); } } catch (IOException e1) { e1.printStackTrace(); } } @Override protected void onResume() { super.onResume(); if (!favorite.isEmpty()){ favorite.clear(); selectFavorite(); } else if (!list.isEmpty()){ list.clear(); selectList(); } } private void CopyDB(InputStream inputStream, OutputStream outputStream) throws IOException { byte[] buffer = new byte[1024]; int length; while ((length = inputStream.read(buffer)) > 0) { outputStream.write(buffer, 0, length); } inputStream.close(); outputStream.close(); } private void selectFavorite() { database = SQLiteDatabase.openOrCreateDatabase(destPath + "/md_book.db", null); Cursor cursor = database.rawQuery("SELECT * FROM main WHERE fav = 1", null); while (cursor.moveToNext()) { String word = cursor.getString(cursor.getColumnIndex("word")); String definition = cursor.getString(cursor.getColumnIndex("definition")); String trans = cursor.getString(cursor.getColumnIndex("trans")); String img = cursor.getString(cursor.getColumnIndex("img")); int id = cursor.getInt(cursor.getColumnIndex("id")); Structure struct = new Structure(word, definition, trans, img, id); struct.setWord(word); struct.setDefinition(definition); struct.setTrans(trans); struct.setImg(img); struct.setId(id); favorite.add(struct); } } private void selectList() { database = SQLiteDatabase.openOrCreateDatabase(destPath + "/md_book.db", null); Cursor cursor = database.rawQuery("SELECT * FROM main", null); while (cursor.moveToNext()) { String word = cursor.getString(cursor.getColumnIndex("word")); String definition = cursor.getString(cursor.getColumnIndex("definition")); String trans = cursor.getString(cursor.getColumnIndex("trans")); String img = cursor.getString(cursor.getColumnIndex("img")); int id = cursor.getInt(cursor.getColumnIndex("id")); Structure struct = new Structure(word, definition, trans, img, id); struct.setWord(word); struct.setDefinition(definition); struct.setTrans(trans); struct.setImg(img); struct.setId(id); list.add(struct); } } }  
    • توسط jonoob
      سلام وقت بخیر 
      من یک آپ میخواهم طراحی کنم که کاربر بتونه ساولش را بپرسه و کاربران جواب بدن و بتونن آن را لایک کنن .
      پنج قسمت داره
      مثلا = ریاضی - علوم - فارسی - قران-شیمی
      روی ریاضی کلیک کنه وارد اون بخش بشه تمام سوالات مطرح شده را ببینه بتونه روش کلیک کنه و جوابها را ببینه و بتونه لایک 
      و
      خودش بتونه سوال طرح کنه
       
       
      لطفا منو راهنمایی کنید
      ممنونم
    • توسط jonoob
      سلام به همه دوستان عزیز
      من می خواهم در یک صفحه اول برنامه این نمایش داده بشه 
      مثلا
      سلام صبح بخیر امروز سه شنبه 24 بهمن 1396
      اینهای که رنگی کردم بر اساس ساعت  و تاریخ به روز گوشی تغیر کند
      لطفا راهنمایی کنید
      مرسی از همگی دوستان
       
    • توسط evill
      سلام
      بنده در اکتیویتی دوم یدونه تب لایوت انداختم که چهارتا تب داره
      میخوام وقتی از اکتیویتی اول رفتم به اکتیویتی دوم ی تب خاص رو اول نشون بده
      مثلا تب دوم
      ولی همیشه تب اول از سمت چپ که اندیسش صفره رو اول نشون میده
      گفتن با این کد
      tableLayout.getTabAt(2); میشه ولی نشد ...راه دیگه ای هست دوستان؟

  • دوره آموزشی اندروید آموزش ویدئویی اندروید آموزش برنامه نویسی اندروید اندروید کاپ دوره آنلاین اندروید کتاب های آموزشی اندروید بسته آموزشی اندروید دوره برنامه نویسی اندروید آموزش Kotlin آموزش برنامه نویسی ios مهارت های فروش
    آموزش برنامه نویسی اندروید
  • فایل