مشکل در Google Map (فرگمنتش)
دوستان اگه دقت کرده باشید، توی آموزش Google Map، وقتی که آقای آقاجانی پروژه رو برای اولین بار اجرا می کنه، Force Close میده که مشکل از فرگمنت هست و خودشون هم توضیح میدن که ممکنه مشکل از تعریف نشدن فرکمنت توی این ورژن باشه. ولی یهو فیلم قطع میشه و برنامه که دوباره اجرا میشه، خطا نمیگیره و مشکلی نداره و توضیحی نمیدن که اون خطا چجوری حل شد. حالا من توی اون قسمت مشکل دارم و اون فیلم دیگه جوابگو نیست:(
مشکلم هم دقیقا از فرگمنته.
اینم لوگ:
من خیلی خاطر نیست آموزش هارو ولی شما باید برای استفاده از گوگل مپ یک فرگمنت قرار بدید که داخلش خاصیت name رو براش
com.google.android.gms.maps.SupportMapFragment در نظر بگیری مثل کد xml زیر :
<fragment
android:id="@+id/map"
android:name="com.google.android.gms.maps.SupportMapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent" />
در کلاس مربوطه هم باید برای دسترسی به نقشه به اینصورت کد بزنید :
SupportMapFragment frag = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
GoogleMap map = frag.getMap();
توجه داشته باشید برای استفاده از مپ یکسری پرمیشن ها رو هم باید به برنامه بدید :
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
که البته من پرمیشن های بالا رو کامل گذاشتم چون برخی هم مال دسترسی به GPS هست که نیاز میشه .
و همینطور باید کلید دریافتی از گوگل بهمراه ورژن گوگل پلی سرویس رو توی منی فست وارد کنید .
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="XXXxxxxXXXXxxxXXXXxxxXXX" />
با این روش شما میتونید به راحتی از مپتون استفاده کنید و اگر کلید صحیح رو داده باشید نباید مشکلی باشه .
تنها نکته ای که میمونه این هست که شما کلیدی که برای دیباگ استفاده میکنید با کلید مربوط به نسخه ریلیز شده متفاوت هست .
موفق باشید :)
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .


