رفتن به مطلب
  • 0

مشکل کامپایل در targetSdkVersion=31


fun_code

سوال

سلام دوستان عزیز

دو ماه کدنویسی کردم.

زمان آپلود در گوگل پلی فرا رسید.

گویا این مورد الزامی شده که باید در منیفست تارگت رو targetSdkVersion=31 قرار داد.

بنده روی 30 قرار داده بودم و همه چیز اوکی بود.

اما وقتی روی 31 قرار میدم کامپایل با خطا مواجه میشه...

کلا در سایت رسمی هم هر کسی این ایراد رو مطرح کرده حتی خود ارل هم گفته تارگت رو به 30 تغییر بده ! قطعا میدونن گوگل پلی محدود کرده اما پاسخشون عجیبه !

آیا بیسیک فور اندروید نمیتونه کتابخانه هایی چون پوشه رو روی تارگت 31 کامپایل کنه ؟

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

اگر تجربه اش رو دارید ممنون میشم راهنمایی بفرمایید.

متشکرم

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

10 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

در ۱۴۰۱/۶/۱۴ در 09:16، محمدرضا شاهپیری گفته است:

فایل منیفست کتابخونه ویرایش شد. تست کنید ببینید حل شده یا نه

pushpoleedited.zip 482.3 kB · 0 دریافت

سلام استاد

فایل هایی که لطف کردید رو جایگزین کردم.

اما زمان کامپایل پیام زیر رو میده :

B4A Version: 11.80
Parsing code.    (0.21s)
	Java Version: 11
Building folders structure.    (0.00s)
Compiling code.    (0.17s)
Compiling layouts code.    (0.00s)
Organizing libraries.    (0.00s)
	(AndroidX SDK)
Compiling resources    (0.14s)
Linking resources    Error
AndroidManifest.xml:57: error: duplicate attribute.

خط 56 تا 61 فایل AndroidManifest.xml هم در پایین ارسال میکنم خدمتتون :

<service android:exported="true" android:name="com.google.firebase.iid.FirebaseInstanceIdService"
		 android:exported="true">
		    <intent-filter android:priority="-500">
		        <action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
		    </intent-filter>
		</service>

 

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

در ۱۴۰۱/۶/۱۴ در 15:56، fun_code گفته است:

 

ویرایش شد. مجددا تست کنید

PushPoleEdited.zip

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

در ۱۴۰۱/۶/۱۴ در 22:03، محمدرضا شاهپیری گفته است:

ویرایش شد. مجددا تست کنید

PushPoleEdited.zip 482.33 kB · 3 دریافت

سلام استاد

واو ، واقعا متشکرم از شما

ممنونم ، بدون ارور کامپایل و در گوگل پلی هم آپلود شد. 🙏

 

انشالله که بعدها گوگل کلا از کتابخانه پوشه بابت نحوه دریافت شناسه تبلیغات (Advertise ID)  ایراد نگیره. چون گویا قوانین جدیدی در این مورد قرار داده و کاربران باید در پنل مشخص کنن که آیا  در محصول خودشون شناسه تبلیغات رو دریافت میکنن و اگر آره و از کتابخانه ای به جز googleAdmob استفاده میکنن باید قوانین مربوطه در کتابخانه استفاده شده رعایت شود.

اگر دقت کرده باشید اکثر اپ ها که شناسه تبلیغات گوشی رومیگیرن با تگ contain ads نمایش داده میشن. اما محصولاتی که با کتابخانه پوشه میان شناسه تبلیغات رو میگیرن هیچ تگی ندارن.

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

سلام

تارگت رو 31 قرار دادم

android.jar رو 30 انتخاب کردم. کامپایل میشه اما روی دستگاهی که api31 یا همون اندروید 12 و بالاتر باشه نصب نمیشه.

روی گوشی خودم نصب میشه.

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

البته با اینکار هم حتی کماکان امکان آپلود در گوگل پلی نیست.

البته مشکل اصلی از کتابخانه پوشه است و اطلاع دادم وادعا دارن بررسی و حل میکنیم که بعیده.

چون مشابه همیشه b4a رو آخرین مرحله کارشون قرار میدن و طبق گفته خودشون برای فلاتر و اندروید استودیو این مورد رو حل کردن.

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

چه خطایی موقه کامپایل میگیرید؟ و اینکه فقط با پوشه هست این مشکل؟

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

در ۱۴۰۱/۶/۱۳ در 19:24، محمدرضا شاهپیری گفته است:

چه خطایی موقه کامپایل میگیرید؟ و اینکه فقط با پوشه هست این مشکل؟

سلام و درود

متن خطا زمان کامپایل :

Failure [INSTALL_PARSE_FAILED_MANIFEST_MALFORMED: Failed parse during installPackageLI: /data/app/vmdl335834745.tmp/base.apk (at Binary XML file line #39): com.pushpole.sdk.fcm.FcmService: Targeting S+ (version 31 and above) requires that an explicit value for android:exported be defined when intent filters are present]

متن خطای گوگل پلی ، پس از آپلود فایل aab :

You uploaded an APK or Android App Bundle which has an activity, activity alias, service or broadcast receiver with intent filter, but without 'android:exported' property set. This file can't be installed on Android 12 or higher. See: developer.android.com/about/versions/12/behavior-changes-12#exported

رفع مشکل برای برنامه نویسان پوشه احتمالا ساده است اما چون ارزش زیادی براشون نداره وقت نمیذارن.

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

ناچارا بدون کتابخانه پوشه فرستادم برای بررسی گوگل پلی.

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

در ۱۴۰۱/۶/۱۳ در 22:18، fun_code گفته است:

سلام و درود

متن خطا زمان کامپایل :

Failure [INSTALL_PARSE_FAILED_MANIFEST_MALFORMED: Failed parse during installPackageLI: /data/app/vmdl335834745.tmp/base.apk (at Binary XML file line #39): com.pushpole.sdk.fcm.FcmService: Targeting S+ (version 31 and above) requires that an explicit value for android:exported be defined when intent filters are present]

متن خطای گوگل پلی ، پس از آپلود فایل aab :

You uploaded an APK or Android App Bundle which has an activity, activity alias, service or broadcast receiver with intent filter, but without 'android:exported' property set. This file can't be installed on Android 12 or higher. See: developer.android.com/about/versions/12/behavior-changes-12#exported

رفع مشکل برای برنامه نویسان پوشه احتمالا ساده است اما چون ارزش زیادی براشون نداره وقت نمیذارن.

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

ناچارا بدون کتابخانه پوشه فرستادم برای بررسی گوگل پلی.

کدهای منیفستتون روبزارید. همونا که پوشه هم توشه

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

در ۱۴۰۱/۶/۱۳ در 23:19، محمدرضا شاهپیری گفته است:

کدهای منیفستتون روبزارید. همونا که پوشه هم توشه

سلام مجدد

کدهای منیفست خدمت شما استاد بزرگوار.

AddManifestText(
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="31"/>
<supports-screens android:largeScreens="true" 
    android:normalScreens="true" 
    android:smallScreens="true" 
    android:anyDensity="true"/>)
SetApplicationAttribute(android:icon, "@drawable/icon")
SetApplicationAttribute(android:label, "$LABEL$")

SetApplicationAttribute(android:theme, "@style/noAnimTheme")
SetActivityAttribute(menu, android:configChanges, "orientation|screenSize")
SetActivityAttribute(game, android:configChanges, "orientation|screenSize")
AddPermission(android.permission.WAKE_LOCK)
AddPermission(android.permission.INTERNET)
AddPermission(android.permission.ACCESS_NETWORK_STATE)

RemovePermission(android.permission.SEND_SMS)
RemovePermission(android.permission.CALL_PHONE)

SetApplicationAttribute(android:requestLegacyExternalStorage,"true")
SetApplicationAttribute(android:largeHeap,"true")
SetApplicationAttribute(android:usesCleartextTraffic,"true")
SetApplicationAttribute(android:supportsRtl, "true")

CreateResourceFromFile(Macro, PushPole.Standalone)
AddApplicationText(<meta-data android:name="com.pushpole.sdk.token" android:value="PUSHPOLE_810123687517"/>)

 

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

فایل منیفست کتابخونه ویرایش شد. تست کنید ببینید حل شده یا نه

pushpoleedited.zip

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

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...