up
بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ
مشکل در Google Map (فرگمنتش)
مدیریت گفتگو
آخرین تغییر: 11 سال پیش
دوستان اگه دقت کرده باشید، توی آموزش Google Map، وقتی که آقای آقاجانی پروژه رو برای اولین بار اجرا می کنه، Force Close میده که مشکل از فرگمنت هست و خودشون هم توضیح میدن که ممکنه مشکل از تعریف نشدن فرکمنت توی این ورژن باشه. ولی یهو فیلم قطع میشه و برنامه که دوباره اجرا میشه، خطا نمیگیره و مشکلی نداره و توضیحی نمیدن که اون خطا چجوری حل شد. حالا من توی اون قسمت مشکل دارم و اون فیلم دیگه جوابگو نیست:(
مشکلم هم دقیقا از فرگمنته.
اینم لوگ:
پاسخها 2
من خیلی خاطر نیست آموزش هارو ولی شما باید برای استفاده از گوگل مپ یک فرگمنت قرار بدید که داخلش خاصیت 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" />
با این روش شما میتونید به راحتی از مپتون استفاده کنید و اگر کلید صحیح رو داده باشید نباید مشکلی باشه .
تنها نکته ای که میمونه این هست که شما کلیدی که برای دیباگ استفاده میکنید با کلید مربوط به نسخه ریلیز شده متفاوت هست .
موفق باشید :)
نظرات
جان؟ کلی دیباگ با کلید ریلیز شده متفاوته؟ این کلید نسخه ریلیز شده رو از کجا بیارم؟ من که همش دارم از کلید دیباگ استفاده میکنم:(
کلید دیباگ کلیدی هست که برای تست برنامه استفاده میشه و شما روی ایمولیتر استفاده کنید ولی کلید رلیز کلیدی هست که شما موقع خروجی گرفتن از برنامه بهش میدیدهمون signKey که با پلاگین keyTools میسازید .
آخه من از اندروید استودیو استفاده میکنم
فرقی نمیکنه بالاخره شما کلیدی که الان داری استفاده میکنی کلید دیباگ هست برای ساخت و اگر برنامه رو در گوشی بخواین تست بگیرید مشکل پیدا میکنید ولی در ایمولیتر نباید مشکلی داشته باشید . به هر حال برای دریافت کلید ریلیز برنامه میتونید از این روش هم استفاده کنید لینک
واقعا ممنونم محمدحسین عزیز. حل شد. مشکل از همون keystore بود.
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .
ویرایش
پیام



نظرات