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

برای انجام پرداخت درون برنامه ای نیاز است تا یک کانکشن با مارکتی که در آن محصولات درون برنامه ای خود را به فروش گذاشته اید برقرار کنید.

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

قطعه کد زیر این کار را انجام می دهد.در این قطعه کد مارکت را برای مثال بازار قرار داده ایم.

 

IInAppBillingService mService;

ServiceConnection mServiceConn = new ServiceConnection() {

public void onServiceDisconnected(ComponentName name) {

mService = null;

}

public void onServiceConnected(ComponentName name,

IBinder service) {

if ( !"com.farsitel.bazaar".equals(name.getPackageName()))

{

Toast.makeText(getApplicationContext()

, "ابتدا برنامه هک پرداخت درون برنامه ای را حذف و سپس اقدام به خرید کنید!",

Toast.LENGTH_SHORT).show();

finish();

}

else {

mService = IInAppBillingService.Stub.asInterface(service);

}

}

};

 

این قطعه کد در جایی قرار می گیرد که کانکشن می خواهد برقرار شود.

امیدواریم این آموزش برای شما دوستان عزیز مفید واقع شود.

 

 

1 کاربر پسند دیده است

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


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

سلام

وقتی می خواهیم از طریق درون پرداختی کافه بازار پرداخت کنیم، قبل از باز شدن

پرداخت لاکی پچر میاد!!

ولی درون پرداختی مایکت اینجوری نیست، خیال راحت صفحه پرداخت میاد، در حالی که لاکی پچر توی گوش نصب هست

تفاوت درون پرداختی کافه بازار با مایکت چیه؟  در ضمن کد سورس دورن پرداختی مثل همند، اصلا فرقی نداره ،پس تفاوتش چیست؟؟؟

من به کافه بازار پیام دادم که چرا درون پرداختی مثل مایکت نمی کنی؟ بهم جواب داد که به گروه فنی ارجاع داده شد

هنوز که هیچی درست نکرده! جای پای کافه بازار می لنگه

1 کاربر پسند دیده است

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


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

همه مارکت ها از مستندات گوگل پلی استفاده می کنند اما خوب این مستندات در مورد پرداخت درون برنامه دارای باگ هایی هستند که حتی با سرچ کردن می توان تعدادی از این باگ ها را در سایتها پیدا کنید حالا لاکی پچر و امثال ان از همین باگ ها استفاده کرده و خرید را جعل می کنند.از طرفی مایکت به جای این که مثل بازار موضوع را رها کند تا خود توسعه دهنده به فکر ان باشد امده و باگها را مرتفع کرده.

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

شاید این هم یکی از احمال کاری های بازار باشد که به توسعه دهنئگان احترام لازم را نمی گذارد و از آنها حمایت نمی کند.

1 کاربر پسند دیده است

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


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

سلام. ممنونم بابت این نکته بسایر زیبایی که عنایت فرمودید برادر.

1 کاربر پسند دیده است

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


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

دوستان اگه ممکنه کد های کل اکتیویتی خرید +کد های بالا رو بدن

1 کاربر پسند دیده است

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


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

من یک جایی خوندم که 100 % از اپ های توی گوگل پلی هک شدن تازه اونها از ما بهتر هستند البته هکر هاشونم دست کمی ندارن اون دیگه بر میگرده به دولت که اجازه نده اینطوری بشه و اینکه خود مردم رعایت بکنن و حق ما توسعه دهنده ها رو ضایع نکنن.

1 کاربر پسند دیده است

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


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

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

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

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

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


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

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

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


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

  • مطالب مشابه

    • توسط niloobani
      دوستان به یک برنامه نویس و توسعه دهنده ios و اندروید در یک شرکت معتبر نیاز دارم. لطفا در صورت داشتن شرایط پیام بدید
      http://banijob.com/company/پیشگامان-هوا-و-انرژی/jobs/APP-Developer
    • توسط AliMirzaei
      سلام
      من موقع ران کردن کد در ecilpse با اروری مواجه شدم! ممنون میشم مشکل من را حل کنید!
      مشکل در تصاویر زیر آمده است!
      مدل سیستم+نسخه JDK ,JRE + نسخه ecilpse در تصاویر آمده!
       
       
       





    • توسط b.kordtabar
      چگونه می توان در اپلیکیشن اندروید قابلیت آپ دیت اضافه کرد؟
    • توسط Omid Zakeri
      ویجت یک برنامه ی کوچک و یا یک کنترل از برنامه ی اندروید شما می باشد که در صفحه ی home  قرار گرفته است.  ویجت ها می توانند به راحتی در دسترس باشند، چرا که به شما اجازه می دهند تا برنامه های مورد علاقه ی خود را روی صفحه home قرار دهید تا به سرعت به آنها دسترسی داشته باشید. احتمالا چند ویجت متداول از جمله ویجت موسیقی، آب و هوا و ساعت، را دیده اید.
      ویجت ها می توانند انواع مختلفی داشته باشند از قبیل ویجت اطلاعات، ویجت های مجموعه، ویجت های کنترل و ویجت های چندگانه. اندروید یک چارچوب کامل به ما ارائه می دهد تا ویجت های خود را گسترش دهیم.
       
      Widget - XML file
      برای ایجاد یک ویجت کاربردی، ابتدا چیزی که نیاز دارید، شی Object AppWidgetProviderInfo است که شما در یک فایل XML ویجت جداگانه تعریف می کنید. برای انجام این کار، بر روی پروژه خود راست کلیک کرده و یک پوشه جدید به نام xml ایجاد کنید. حالا روی پوشه تازه ایجاد شده راست کلیک کرده و یک فایل XML جدید ایجاد کنید. نوع منبع فایل XML باید به AppWidgetProvider تنظیم شود. در فایل xml برخی از خواص را به صورت زیر تعریف می کنید:
      <appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android" android:minWidth="146dp" android:updatePeriodMillis="0" android:minHeight="146dp" android:initialLayout="@layout/activity_main"> </appwidget-provider> Widget - Layout file
      حالا شما باید طرح ویجت خود را در فایل پیش فرض XML خود تعریف کنید. شما می توانید قطعات را برای تولید xml خودکار بکشید.
      Widget - Java file
      پس از تعریف طرح، در حال حاضر یک فایل JAVA جدید ایجاد کنید یا از موجود استفاده کنید و آن را با کلاس AppWidgetProvider گسترش دهید و روش بهروزرسانی آن را به صورت زیر تعریف کنید.
      در روش به روز رسانی، شما باید شیء دو کلاس را که PendingIntent و RemoteViews هستند تعریف کنید. نحو آن :
      PendingIntent pending = PendingIntent.getActivity(context, 0, intent, 0); RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.activity_main);  
      Widget - Manifest file
      شما همچنین باید AppWidgetProvider را در فایل manifest خود به شرح زیر اعلام کنید:
      <receiver android:name="ExampleAppWidgetProvider" > <intent-filter> <action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> </intent-filter> <meta-data android:name="android.appwidget.provider" android:resource="@xml/example_appwidget_info" /> </receiver>  
      MainActivity.java
      package com.example.omidza.myapplication; import android.app.PendingIntent; import android.appwidget.AppWidgetManager; import android.appwidget.AppWidgetProvider; import android.content.Context; import android.content.Intent; import android.net.Uri; import android.widget.RemoteViews; import android.widget.Toast; public class MainActivity extends AppWidgetProvider{ public void onUpdate(Context context, AppWidgetManager appWidgetManager,int[] appWidgetIds) { for(int i=0; i<appWidgetIds.length; i++){ int currentWidgetId = appWidgetIds[i]; String url = "http://www.tutorialspoint.com"; Intent intent = new Intent(Intent.ACTION_VIEW); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setData(Uri.parse(url)); PendingIntent pending = PendingIntent.getActivity(context, 0,intent, 0); RemoteViews views = new RemoteViews(context.getPackageName(),R.layout.activity_main); views.setOnClickPendingIntent(R.id.button, pending); appWidgetManager.updateAppWidget(currentWidgetId,views); Toast.makeText(context, "widget added", Toast.LENGTH_SHORT).show(); } } } res/layout/activity_main.xml
      <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity" android:transitionGroup="true"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Tutorials point" android:id="@+id/textView" android:layout_centerHorizontal="true" android:textColor="#ff3412ff" android:textSize="35dp" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Widget" android:id="@+id/button" android:layout_centerHorizontal="true" android:layout_marginTop="61dp" android:layout_below="@+id/textView" /> </RelativeLayout> res/xml/mywidget.xml.
      <?xml version="1.0" encoding="utf-8"?> <appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android" android:minWidth="146dp" android:updatePeriodMillis="0" android:minHeight="146dp" android:initialLayout="@layout/activity_main"> </appwidget-provider> AndroidManifest.xml
      <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.omidza.myapplication" > <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <receiver android:name=".MainActivity"> <intent-filter> <action android:name="android.appwidget.action.APPWIDGET_UPDATE"></action> </intent-filter> <meta-data android:name="android.appwidget.provider" android:resource="@xml/mywidget"></meta-data> </receiver> </application> </manifest>  
    • توسط saeed1366412
      با سلام میخواستم بدون داخل صفحه xml چطوری اعداد به صورت توان دار داخل textview بنویسم 
       

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