صفحه 6 از 10 اولاول ... 45678 ... آخرآخر
نمایش نتایج 201 تا 240 از 362

نام تاپیک: پرداخت درون برنامه ای

  1. #201

    نقل قول: پرداخت درون برنامه ای

    خوب میتونید تغییر قیمت بدید و قیمت برنامه رو صد تومن بذارید و تست کنید! :)
    تو تغییر قیمت محصولات درون برنامه ای هم سریع تغییر قیمت اعمال میشه و نیازی به تایید بازار برای تغییر قیمت نیست. البته چون تقریبا دو سوم پول دوباره برمیگرده به خودتون فکرنکنم موضوع مهمی باشه
    این از بحث هزینه.
    برای اینکه هم شما رو تشخیص نده که قبلا خریدید، راهی به ذهنم نمیرسه مگر اینکه با یک نام دیگه تو پنل بازار لاگین کنید، یا اینکه اسم محصول رو تغییر بدید!

  2. #202
    کاربر دائمی آواتار pedram.11
    تاریخ عضویت
    اردیبهشت 1391
    محل زندگی
    پشت کامپیوتر
    پست
    394

    نقل قول: پرداخت درون برنامه ای

    برای دریافت کد base64EncodedPublicKey باید اول برنامه بدون رجیستر رو آپلود کرد؟ بعدش چطور برنامه جدید رو دوباره قرار بدیم؟!

  3. #203

    نقل قول: پرداخت درون برنامه ای

    نقل قول نوشته شده توسط pedram.11 مشاهده تاپیک
    برای دریافت کد base64EncodedPublicKey باید اول برنامه بدون رجیستر رو آپلود کرد؟ بعدش چطور برنامه جدید رو دوباره قرار بدیم؟!
    versionCode برنامه را در مانیفست یک شماره میبری بالا و سپس آپلود میکنی
    انگار که برنامه را آپدیت کردی و حالا داری نسخه جدید را آپلود میکنی

  4. #204
    کاربر دائمی آواتار pedram.11
    تاریخ عضویت
    اردیبهشت 1391
    محل زندگی
    پشت کامپیوتر
    پست
    394

    نقل قول: پرداخت درون برنامه ای

    ممنون از جوابتون، ببخشید کد RC_REQUEST اصل کاریه دیگه نه؟ base64EncodedPublicKey مهمه؟

  5. #205

    نقل قول: پرداخت درون برنامه ای

    نقل قول نوشته شده توسط pedram.11 مشاهده تاپیک
    ممنون از جوابتون، ببخشید کد RC_REQUEST اصل کاریه دیگه نه؟ base64EncodedPublicKey مهمه؟
    1 - کدیه برای پیگیری پرداخت (تو کامنت انگلیسیش انطوری نوشته) ... یه عدد بزار
    2 - توضیحات بازار را مطالعه کن :
    (( پنل پرداخت بازار یک کلید عمومی در اختیار شما قرار می‌دهد که باید در برنامهٔ خود از آن استفاده کنید. این کلید برای هر برنامه منحصر به فرد است. ))

  6. #206
    کاربر دائمی آواتار raha_jon
    تاریخ عضویت
    بهمن 1392
    محل زندگی
    بعضی ها چقد مردن!!وقتی میبینن یک برنامه فروش خوبی داره ف
    پست
    480

    نقل قول: پرداخت درون برنامه ای

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

    پنل پرداخت بازار یک کلید عمومی در اختیار شما قرار می‌دهد که باید در برنامهٔ خود از آن استفاده کنید. این کلید برای هر برنامه منحصر به فرد است. برای دریافت این کلید از بخشبرنامه‌های فروشنده بر روی کلید RSA برنامهٔ خود کلیک کرده و آن را دریافت کنید.



    چطوری میشه از این کلید محافظت کرد؟؟؟؟

    اگه از این کد محافظت نکنیم چه خطری تهدید می کنه؟
    خواهشا راهنمایی کنید.
    آخرین ویرایش به وسیله raha_jon : جمعه 21 شهریور 1393 در 10:40 صبح

  7. #207
    کاربر دائمی آواتار esmail3309
    تاریخ عضویت
    تیر 1393
    محل زندگی
    خراسان شمالی
    پست
    331

    نقل قول: پرداخت درون برنامه ای

    سلام دوستان

    میخوام بره اولین بار به برنامم پرداخت درون برنامه ای اذافه کنم

    برنامم چهار قسمت کلی داره که توی هر قسمت تعدادی گزینه وجود داره که درون گزینه ها اطلاعات برنامه موجوده

    خب من میخوام یک صفحه ی خرید با چهار گزینه به برنامم اذافه کنم که هر گزینه برای خرید یکی از بخش های برنامه باشه

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

    میتونید راهنماییم کنید؟

  8. #208
    کاربر دائمی آواتار esmail3309
    تاریخ عضویت
    تیر 1393
    محل زندگی
    خراسان شمالی
    پست
    331

    نقل قول: پرداخت درون برنامه ای

    نقل قول نوشته شده توسط esmail3309 مشاهده تاپیک
    سلام دوستان

    میخوام بره اولین بار به برنامم پرداخت درون برنامه ای اذافه کنم

    برنامم چهار قسمت کلی داره که توی هر قسمت تعدادی گزینه وجود داره که درون گزینه ها اطلاعات برنامه موجوده

    خب من میخوام یک صفحه ی خرید با چهار گزینه به برنامم اذافه کنم که هر گزینه برای خرید یکی از بخش های برنامه باشه

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

    میتونید راهنماییم کنید؟
    .........up

  9. #209

    نقل قول: پرداخت درون برنامه ای

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

    اینم اکتیویتی خرید درون برنامه ای:


    package com.example.smsbaaz;

    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.util.ArrayList;

    import org.apache.http.HttpEntity;
    import org.apache.http.HttpResponse;
    import org.apache.http.client.ClientProtocolException;
    import org.apache.http.client.methods.HttpGet;
    import org.apache.http.entity.BufferedHttpEntity;
    import org.apache.http.impl.client.DefaultHttpClient;

    import com.example.facebooklike.R;

    import util.IabHelper;
    import util.IabResult;
    import util.Inventory;
    import util.Purchase;

    import android.app.ActionBar.LayoutParams;
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.app.ProgressDialog;
    import android.content.Context;
    import android.content.Intent;
    import android.content.SharedPreferences;
    import android.content.SharedPreferences.Editor;
    import android.content.pm.PackageManager;
    import android.content.pm.PackageManager.NameNotFoundExce ption;
    import android.net.ConnectivityManager;
    import android.net.NetworkInfo;
    import android.os.Bundle;
    import android.preference.PreferenceManager;
    import android.util.Log;
    import android.view.View;
    import android.view.View.MeasureSpec;
    import android.view.View.OnClickListener;
    import android.view.ViewGroup;
    import android.view.Window;
    import android.widget.AdapterView;
    import android.widget.AdapterView.OnItemClickListener;
    import android.widget.ArrayAdapter;
    import android.widget.Button;
    import android.widget.ImageButton;
    import android.widget.LinearLayout;
    import android.widget.ListAdapter;
    import android.widget.ListView;
    import android.widget.TextView;
    import android.widget.Toast;

    public class UpdateActivity extends Activity {

    int update = 0;
    public ProgressDialog dialog ;
    ImageButton btn1;
    ImageButton btn2;
    SharedPreferences sp;

    //Debug tag, for logging
    static final String TAG = "SmsBaaz";
    //SKUs for our products: the premium upgrade (non-consumable)
    static final String SKU_PREMIUM = "jhgiopjogyu2hu";
    //Does the user have the premium upgrade?
    boolean mIsPremium = false;
    //(arbitrary) request code for the purchase flow
    static final int RC_REQUEST = 10001;
    //The helper object
    IabHelper mHelper;



    @Override
    protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.update);



    // show loading dialog with ProgressDialog
    dialog = new ProgressDialog(this);
    dialog.setCancelable(false);
    dialog.setInverseBackgroundForced(false);





    btn1 = (ImageButton) findViewById(R.id.button1);
    btn1.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View v) {
    // TODO Auto-generated method stub

    finish();
    startActivity(new Intent(UpdateActivity.this,MainActivity.class));

    }
    });

    btn2 = (ImageButton) findViewById(R.id.button2);


    sp = PreferenceManager.getDefaultSharedPreferences(this );




    if(!isPackageInstalled("com.farsitel.bazaar", UpdateActivity.this)){
    Toast.makeText(getApplicationContext(),"نرم افزار بازار هنوز نصب نشده است",Toast.LENGTH_LONG).show();
    }
    else{
    if(isNetworkConnected()){

    dialog.setMessage("بررسی سبد خرید");
    dialog.show();
    String base64EncodedPublicKey = "MIHNMA0GCSqGSIb3DQEBAQUAA4G7ADCBtwKBrwC9eqtpO4UqF bumNBZsFtCM+knU+9kcFNGX3mgD87fojwiXlwvfk8SigLmCVny ahPwAgqBWTYZNwj7ae/B5ZlFft4JyYKIvi/PJPx5he6okOyLjy+wIYQ3/7sTpe3sqgqln266spL3MfOxa3xYVC038Ig04Cuy0rW6QFGnQFI riZCHEcb2bymWJCVy2YP5Omw1PrQRD6Z+R816p1DQn6b3mOQb2 ggCFDRL/PKmHfGcCAwEAAQ==";
    // You can find it in your Bazaar console, in the Dealers section.
    // It is recommended to add more security than just pasting it in your source code;
    mHelper = new IabHelper(this, base64EncodedPublicKey);


    Log.d(TAG, "Starting setup.");
    mHelper.startSetup(new IabHelper.OnIabSetupFinishedListener() {
    public void onIabSetupFinished(IabResult result) {
    Log.d(TAG, "Setup finished.");

    if (!result.isSuccess()) {
    Toast.makeText(getApplicationContext(),"وارد اکانت حساب کاربری خود در بازار شوید."+"\n"+"یا اتصال به اینترنت را بررسی کنید.",Toast.LENGTH_LONG).show();

    // Oh noes, there was a problem.
    Log.d(TAG, "Problem setting up In-app Billing: " + result);
    }
    // Hooray, IAB is fully set up!
    mHelper.queryInventoryAsync(mGotInventoryListener) ;

    }


    });



    }
    }





    }






    //با آغاز اکتیویتی کد زیر اجرا میشود که برای جستجو premium بودن میباشد.
    //اگر کاربر premium باشد دیالوگ loading مخفی میشه dialog.hide() متد UpdateUi() اجرا میشه و محتوای این متد را در باتن قرار میده.
    //اگر کاربر premium نباشه هم منتظر لمس کردن کاربر بر روی دکمه میشه که متد onOnlineUpgradeAppButtonClicked را فراخوانی کند.
    IabHelper.QueryInventoryFinishedListener mGotInventoryListener = new IabHelper.QueryInventoryFinishedListener() {
    public void onQueryInventoryFinished(IabResult result, Inventory inventory) {
    Log.d(TAG, "Query inventory finished.");
    if (result.isFailure()) {
    Log.d(TAG, "Failed to query inventory: " + result);
    dialog.hide();
    Toast.makeText(getApplicationContext(),"خطا در ارتباط با سرور."+"\n"+"وارد اکانت حساب کاربری خود در بازار شوید."+"\n"+"یا اتصال به اینترنت را بررسی کنید.",Toast.LENGTH_LONG).show();
    return;
    }
    else {



    Log.d(TAG, "Query inventory was successful.");
    // does the user have the premium upgrade?
    mIsPremium = inventory.hasPurchase(SKU_PREMIUM);

    // update UI accordingly

    Log.d(TAG, "User is " + (mIsPremium ? "PREMIUM" : "NOT PREMIUM"));
    }
    dialog.hide();
    updateUi();
    Log.d(TAG, "Initial inventory query finished; enabling main UI.");

    }

    };



    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    Log.d(TAG, "onActivityResult(" + requestCode + "," + resultCode + "," + data);

    // Pass on the activity result to the helper for handling
    if (!mHelper.handleActivityResult(requestCode, resultCode, data)) {
    super.onActivityResult(requestCode, resultCode, data);
    } else {
    Log.d(TAG, "onActivityResult handled by IABUtil.");
    }

    }

    boolean verifyDeveloperPayload(Purchase p) {
    String payload = p.getDeveloperPayload();

    return true;
    }

    IabHelper.OnIabPurchaseFinishedListener mPurchaseFinishedListener = new IabHelper.OnIabPurchaseFinishedListener() {
    public void onIabPurchaseFinished(IabResult result, Purchase purchase) {
    Log.d(TAG, "Purchase finished: " + result + ", purchase: " + purchase);
    if (result.isFailure()) {
    Toast.makeText(getApplicationContext(),"وارد اکانت حساب کاربری خود در بازار شوید."+"\n"+"یا اتصال به اینترنت را بررسی کنید.",Toast.LENGTH_LONG).show();
    Log.d(TAG, "Error purchasing: " + result);
    return;
    }
    if (!verifyDeveloperPayload(purchase)) {
    Toast.makeText(getApplicationContext(),"وارد اکانت حساب کاربری خود در بازار شوید."+"\n"+"یا اتصال به اینترنت را بررسی کنید.",Toast.LENGTH_LONG).show();
    complain("Error purchasing. Authenticity verification failed.");
    return;
    }

    Log.d(TAG, "Purchase successful.");

    if (purchase.getSku().equals(SKU_PREMIUM)) {
    Log.d(TAG, "Purchase is premium upgrade. Congratulating user.");
    mIsPremium = true;
    updateUi();
    Toast.makeText(getApplicationContext(),"با تشکر از خرید شما",Toast.LENGTH_LONG).show();


    }
    }
    };

    @Override
    public void onDestroy() {
    super.onDestroy();

    Log.d(TAG, "Destroying helper.");
    if (mHelper != null) mHelper.dispose();
    mHelper = null;
    }



    // اگر کاربر پریمیوم باشد دستورات آپدیت را انجام میدهد در غیر اینصورت به صفحه خرید هدایت می شود.
    public void updateUi() {

    if (mIsPremium) {

    update = 224;

    Editor e = sp.edit();
    e.putInt("update", 224);
    e.commit();

    Toast.makeText(getApplicationContext(),"شما کاربر ویژه هستید",Toast.LENGTH_LONG).show();


    }

    else
    {

    Toast.makeText(getApplicationContext(),"نرم افزار خریداری نشده است",Toast.LENGTH_LONG).show();

    }
    }






    void complain(String message) {
    Log.e(TAG, "**** testbilling Error: " + message);
    }





    private boolean isNetworkConnected() {
    ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo ni = cm.getActiveNetworkInfo();
    if (ni == null) {
    Toast.makeText(getApplicationContext(), "اتصال به اینترنت برقرار نیست", Toast.LENGTH_LONG).show();
    return false;
    } else
    return true;
    }

    public static boolean isPackageInstalled(String packagename,Context context) {
    PackageManager pm = context.getPackageManager();
    try {
    pm.getPackageInfo(packagename, PackageManager.GET_ACTIVITIES);
    return true;}
    catch (NameNotFoundException e) {
    return false;}
    }

    public void onOnlineUpgradeAppButtonClicked(View arg0) {



    if(!isPackageInstalled("com.farsitel.bazaar", UpdateActivity.this)){
    Toast.makeText(getApplicationContext(),"نرم افزار بازار هنوز نصب نشده است",Toast.LENGTH_LONG).show();
    }
    else{
    if(isNetworkConnected()){


    Log.d(TAG, "Upgrade button clicked; launching purchase flow for upgrade.");

    /* TODO: for security, generate your payload here for verification. See the comments on
    * verifyDeveloperPayload() for more info. Since this is a SAMPLE, we just use
    * an empty string, but on a production app you should carefully generate this. */
    String payload = "inbarnametavasotehamedjjsakhteshodeast";

    mHelper.launchPurchaseFlow(UpdateActivity.this, SKU_PREMIUM, RC_REQUEST,
    mPurchaseFinishedListener, payload);



    }
    }


    }





    private static long back_pressed = 0L;
    @Override
    public void onBackPressed()
    {
    finish();
    startActivity(new Intent(UpdateActivity.this,MainActivity.class));
    }






    }

  10. #210

    نقل قول: پرداخت درون برنامه ای

    يه نفر تست كنه لطفا..

  11. #211

    نقل قول: پرداخت درون برنامه ای

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

  12. #212

    نقل قول: پرداخت درون برنامه ای

    با سلام و تشکر، چرا همه لینک ها "قسمت 1 از 3" می باشد؟!

  13. #213
    کاربر دائمی آواتار daniel021
    تاریخ عضویت
    فروردین 1393
    محل زندگی
    شیراز
    پست
    111

    نقل قول: پرداخت درون برنامه ای

    دانلود سورس سالم پرداخت درون برنامه ای برای همه ی API ها

    دریافت سورس

  14. #214

    نقل قول: پرداخت درون برنامه ای

    میتونید از سیستم پرداخت درون برنامه ای همراه پی هم استفاده کنید
    http://hamrahpay.com

  15. #215

    نقل قول: پرداخت درون برنامه ای

    سلام دوسنان من یک مشکلی دارم . تمام کدها رو پیاده سازی کردم . وقتی میزنم خرید ، میره بازار رو باز میکنه ولی ارور 404 یافت نشد میده . دلیل چنین اروری چی میتونه باشه ؟
    مقدار این رشته باید چی یباشه ؟ static final String SKU_PREMIUM
    من برای این رشته ، "شناسهٔ کالا" که در بازار ایجاد کردم رو گذاشتم . مثلا gold

    کد RSA هم گذاشتم در base64EncodedPublicKey

    راستی ، برنامم هنوز تایید نشده . آیا این میتونه دلیلش باشه ؟
    ممنون میشم راهنمایی کنید با تشکر

  16. #216

    نقل قول: پرداخت درون برنامه ای

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

  17. #217

    نقل قول: پرداخت درون برنامه ای

    سلام دوستان
    دوستان کسی پرداخت درون برنامه ای پیاده سازی کرده که بعد از خرید کاربر ، اون خرید مصرف بشه و اگه کاربر دوباره خواست بخره ؟ در مثال TrivialDrive چنین چیزی هست ولی من تست میکنم اشکال داره . ارور زیر رو میده :
    Consumption finished. Purchase: PurchaseInfo(type:subs):{"orderId": "-vmhoD_kwxMs6Ksb", "purchaseToken": "-vmhoD_kwxMs6Ksb", "developerPayload": "", "packageName": "com.example.package", "purchaseState": 0, "purchaseTime": 1413292833534, "productId": "goldvip1"}, result: IabResult: Items of type 'subs' can't be consumed. (response: -1010:Invalid consumption attempt)

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

  18. #218

    نقل قول: پرداخت درون برنامه ای

    با سلام و خسته نباشید.
    متاسفانه بنده نتونستم پروؤه اصلاح شده دوستم عزیزمون hamedjj رو دانلود کنم اصلا سایت https://github.com/hamedjj/BazaarInAppBilling برام باز نمی شه؟ :|

    کسی از دوستان می تونه پروژه تکمیل شده ایشون رو برام در یک جای دیگه آپلود کنه؟

  19. #219

    نقل قول: پرداخت درون برنامه ای

    نقل قول نوشته شده توسط zikimiki مشاهده تاپیک
    با سلام و خسته نباشید.
    متاسفانه بنده نتونستم پروؤه اصلاح شده دوستم عزیزمون hamedjj رو دانلود کنم اصلا سایت https://github.com/hamedjj/BazaarInAppBilling برام باز نمی شه؟ :|

    کسی از دوستان می تونه پروژه تکمیل شده ایشون رو برام در یک جای دیگه آپلود کنه؟
    http://uplod.ir/fjeb73o4eaen/BazaarI...master.zip.htm

  20. #220

    نقل قول: پرداخت درون برنامه ای

    پست شماره 209 همين بالا ↑

  21. #221
    کاربر دائمی آواتار saeed_g21
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    تبریز
    پست
    1,078

    نقل قول: پرداخت درون برنامه ای

    نقل قول نوشته شده توسط hamedjj مشاهده تاپیک
    این که همه گزینه هاش خطا میده !؟

  22. #222

    نقل قول: پرداخت درون برنامه ای

    نقل قول نوشته شده توسط saeed_g21 مشاهده تاپیک
    این که همه گزینه هاش خطا میده !؟
    برای من که خیلی شیک و مجلسی run میشه

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

  23. #223
    کاربر دائمی آواتار saeed_g21
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    تبریز
    پست
    1,078

    نقل قول: پرداخت درون برنامه ای

    در Import مشکلی ندارم موقع Run روی ماشین واقعی هر باتنی که میزنم میندازه بیرون و خطای زیر رو میده

    10-20 15:41:48.743: E/AndroidRuntime(10460): FATAL EXCEPTION: main10-20 15:41:48.743: E/AndroidRuntime(10460): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.hamedjj.bazaarinappbilling/com.hamedjj.bazaarinappbilling.OnlinePremium}: java.lang.IllegalStateException: IAB helper is not set up. Can't perform operation: queryInventory
    10-20 15:41:48.743: E/AndroidRuntime(10460): at android.app.ActivityThread.performLaunchActivity(A ctivityThread.java:2059)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at android.app.ActivityThread.handleLaunchActivity(Ac tivityThread.java:2084)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at android.app.ActivityThread.access$600(ActivityThre ad.java:130)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at android.app.ActivityThread$H.handleMessage(Activit yThread.java:1195)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at android.os.Handler.dispatchMessage(Handler.java:99 )
    10-20 15:41:48.743: E/AndroidRuntime(10460): at android.os.Looper.loop(Looper.java:137)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at android.app.ActivityThread.main(ActivityThread.jav a:4745)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at java.lang.reflect.Method.invokeNative(Native Method)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at java.lang.reflect.Method.invoke(Method.java:511)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at com.android.internal.os.ZygoteInit$MethodAndArgsCa ller.run(ZygoteInit.java:786)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at com.android.internal.os.ZygoteInit.main(ZygoteInit .java:553)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at dalvik.system.NativeStart.main(Native Method)
    10-20 15:41:48.743: E/AndroidRuntime(10460): Caused by: java.lang.IllegalStateException: IAB helper is not set up. Can't perform operation: queryInventory
    10-20 15:41:48.743: E/AndroidRuntime(10460): at com.hamedjj.bazaarinappbilling.util.IabHelper.chec kSetupDone(IabHelper.java:756)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at com.hamedjj.bazaarinappbilling.util.IabHelper.quer yInventoryAsync(IabHelper.java:589)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at com.hamedjj.bazaarinappbilling.util.IabHelper.quer yInventoryAsync(IabHelper.java:616)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at com.hamedjj.bazaarinappbilling.OnlinePremium$3.onI abSetupFinished(OnlinePremium.java:71)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at com.hamedjj.bazaarinappbilling.util.IabHelper.star tSetup(IabHelper.java:267)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at com.hamedjj.bazaarinappbilling.OnlinePremium.onCre ate(OnlinePremium.java:62)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at android.app.Activity.performCreate(Activity.java:5 008)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at android.app.Instrumentation.callActivityOnCreate(I nstrumentation.java:1079)
    10-20 15:41:48.743: E/AndroidRuntime(10460): at android.app.ActivityThread.performLaunchActivity(A ctivityThread.java:2023)
    10-20 15:41:48.743: E/AndroidRuntime(10460): ... 11 more







    -------------------------------------------------------------------------------------------------------
    مورد حل شد

    کافه بازار رو نصب کردم خطا رفع شد

    و همچنین تشکر ویژه دارم از دوست عزیز esmail3309 که با صبر و شکیبایی به سوالاتم جواب داد
    آخرین ویرایش به وسیله saeed_g21 : دوشنبه 28 مهر 1393 در 16:11 عصر

  24. #224
    کاربر دائمی آواتار hosseinaryai
    تاریخ عضویت
    مهر 1391
    محل زندگی
    بابل
    پست
    333

    نقل قول: پرداخت درون برنامه ای

    من تمام پست های اینجا رو خوندم اما باز نتونستم به جواب خودم برسم ..
    سوالم اینه ، اگه بخوام توی برنامه ام (بازی)مثلن انرژی بخرم .. اینجوری که من فهمیدم اگه توی بازار با این دهایی که دوستان نوشتن بخوام این عملیاتو پیاده سازی کنم قط یکبار می تونم بخرم و بازار برای بار بعدی میگه یبار خریداری شده .. اینو چطور باید برطرف کنم ؟

  25. #225

    نقل قول: پرداخت درون برنامه ای

    نقل قول نوشته شده توسط hosseinaryai مشاهده تاپیک
    من تمام پست های اینجا رو خوندم اما باز نتونستم به جواب خودم برسم ..
    سوالم اینه ، اگه بخوام توی برنامه ام (بازی)مثلن انرژی بخرم .. اینجوری که من فهمیدم اگه توی بازار با این دهایی که دوستان نوشتن بخوام این عملیاتو پیاده سازی کنم قط یکبار می تونم بخرم و بازار برای بار بعدی میگه یبار خریداری شده .. اینو چطور باید برطرف کنم ؟
    باید api محصولات مصرف را پیاده سازی کنید که متاسفانه این آموزش هنوز در پست قرار داده نشده است
    از مستندات بازار استفاده کنید

  26. #226

    نقل قول: پرداخت درون برنامه ای

    سلام دوستان
    کسی میتونه بگه چجوری می تونم خرید داخل برنامه رو قبل از اینکه برنامه رو پابلیش کنم تست کنم. من برنامه رو تو بازار آپلود کردم، محصولات هم تعریف کردم ولی نمی تونم از طریق QR دانلودش کنم تا تستش کنم ببینم کار میکنه یا نه، میگه این برنامه تو بازار وجود نداره. اگه پابلیش کنم که همه می بیننش!!!
    خیلی ممنون

  27. #227

    نقل قول: پرداخت درون برنامه ای

    سلام. آیا می‌شود برای برنامۀ غیررایگان که قبلاً منتشر شده، هم پرداخت درون‌برنامه‌ای اضافه کرد؟ برای مثال محصولی فروخته شود، اما پس از آن برای قابلیتی مجزا، نیاز به پرداخت درون برنامه‌ای باشد.

  28. #228

    نقل قول: پرداخت درون برنامه ای

    نقل قول نوشته شده توسط hamed63 مشاهده تاپیک
    سلام دوستان
    کسی میتونه بگه چجوری می تونم خرید داخل برنامه رو قبل از اینکه برنامه رو پابلیش کنم تست کنم. من برنامه رو تو بازار آپلود کردم، محصولات هم تعریف کردم ولی نمی تونم از طریق QR دانلودش کنم تا تستش کنم ببینم کار میکنه یا نه، میگه این برنامه تو بازار وجود نداره. اگه پابلیش کنم که همه می بیننش!!!
    خیلی ممنون
    مگه برنامه رو خودت آپلود نکردی؟خب همونی که از کامپیوترت آپلود کردی رو تست کن. چه فرقی داره با اونی که تو بازار گذاشتی :دی

    نقل قول نوشته شده توسط diapason مشاهده تاپیک
    سلام. آیا می‌شود برای برنامۀ غیررایگان که قبلاً منتشر شده، هم پرداخت درون‌برنامه‌ای اضافه کرد؟ برای مثال محصولی فروخته شود، اما پس از آن برای قابلیتی مجزا، نیاز به پرداخت درون برنامه‌ای باشد.
    اگه برای قابلیت های جدید که قبلا نبوده نیاز به پول باشه که فکر نکنم بازار کاری داشته باشه.مگه اینکه سیستم پنل نذاره آپلود کنی.
    به بازار ایمیل بده بپرس.

  29. #229

    نقل قول: پرداخت درون برنامه ای

    نقل قول نوشته شده توسط Amin-rz مشاهده تاپیک
    اگه برای قابلیت های جدید که قبلا نبوده نیاز به پول باشه که فکر نکنم بازار کاری داشته باشه.مگه اینکه سیستم پنل نذاره آپلود کنی.
    به بازار ایمیل بده بپرس.
    ممنون از شما. از بازار سوال می‌کنم. نتیجه رو اعلام می‌کنم.

  30. #230

    نقل قول: پرداخت درون برنامه ای

    در رابطه با پست 227 خودم. جهت اطلاع دستان عزیز، پاسخ بازار به این شرح بود که:
    ... برای اضافه کردن پرداخت درون‌برنامه‌ای در نسخهٔ غیررایگان مشکلی وجود ندارد. اما همیشه چنین شرایطی برای ما قابل قبول نیست و نیاز به بررسی برنامه دارد.
    واقعاً عملکرد عالی و پاسخگویی سریع بازار، جای تقدیر داره.

  31. #231

    نقل قول: پرداخت درون برنامه ای

    نقل قول نوشته شده توسط mehdiyamani مشاهده تاپیک
    سلام دوستان
    دوستان کسی پرداخت درون برنامه ای پیاده سازی کرده که بعد از خرید کاربر ، اون خرید مصرف بشه و اگه کاربر دوباره خواست بخره ؟ در مثال TrivialDrive چنین چیزی هست ولی من تست میکنم اشکال داره . ارور زیر رو میده :
    Consumption finished. Purchase: PurchaseInfo(type:subs):{"orderId": "-vmhoD_kwxMs6Ksb", "purchaseToken": "-vmhoD_kwxMs6Ksb", "developerPayload": "", "packageName": "com.example.package", "purchaseState": 0, "purchaseTime": 1413292833534, "productId": "goldvip1"}, result: IabResult: Items of type 'subs' can't be consumed. (response: -1010:Invalid consumption attempt)

    نمیدونم مشکلش چی هست . ممنون میشم اگه کسی چنین کدی داره بهم بده
    با تشکر فراوان
    سلام،من اینجوری درستش کردم
    برو تو کلاس IabHelper
    توی متد consume
    اینا رو پاک کن

    if (!itemInfo.mItemType.equals(ITEM_TYPE_INAPP)) {
    throw new IabException(IABHELPER_INVALID_CONSUMPTION,
    "Items of type '" + itemInfo.mItemType + "' can't be consumed.");
    }


  32. #232

    نقل قول: پرداخت درون برنامه ای

    سلام دوستان.
    ببخشید من هم این تایپیک رو خودندم.
    اما جای سوال هست برام که حالا یارو باید پریمیوم بشه؟
    نمیشه مثل بازی های آفتابه و امثالش یه گزینه باشه که وقتی بزنی برات سکه بخره؟
    اگه میشه لطفا بگید اسمش چیه و از کجا می تونم آموزشاش رو پیدا کنم.
    از سورس آقای daniel021
    استفاده کردم و واقعا خیلی عالی بود و کار کرد.
    فقط مشکلم باهاش اینه که من نمی خوام با هر بار ورود کاربر به نرم افزار، نرم افزار به بازار وصل شه و چک کنه بلکه می خوام مثل همون خرید سکه درست کنم برای بازی و برنامه های خودم
    توررو خدا یکی کمکم کنه.
    ممنون از اساتید

  33. #233

    نقل قول: پرداخت درون برنامه ای

    نقل قول نوشته شده توسط dalmif مشاهده تاپیک
    سلام دوستان.
    ببخشید من هم این تایپیک رو خودندم.
    اما جای سوال هست برام که حالا یارو باید پریمیوم بشه؟
    نمیشه مثل بازی های آفتابه و امثالش یه گزینه باشه که وقتی بزنی برات سکه بخره؟
    اگه میشه لطفا بگید اسمش چیه و از کجا می تونم آموزشاش رو پیدا کنم.
    از سورس آقای daniel021
    استفاده کردم و واقعا خیلی عالی بود و کار کرد.
    فقط مشکلم باهاش اینه که من نمی خوام با هر بار ورود کاربر به نرم افزار، نرم افزار به بازار وصل شه و چک کنه بلکه می خوام مثل همون خرید سکه درست کنم برای بازی و برنامه های خودم
    توررو خدا یکی کمکم کنه.
    ممنون از اساتید
    اگر تاپیک را کامل مطالعه کرده بودید این سوال را نمی پرسیدید
    به بخش محصولات مصرفی مراجعه کنید:
    http://pardakht.cafebazaar.ir/doc/?l=fa

  34. #234

    نقل قول: پرداخت درون برنامه ای

    سلام حامد جان.
    خیلی ممنونم که جواب دادید.
    اما من این صفحه ها رو مطالعه کردم که لینک دادید.
    منظور من رو شما متوجه نشدید.
    میگم که من یه برنامه دارم که می خوام توش سکه بفروشم اما بلد نیستم.
    حالا شما دیدم که ارتقا به کاربر ویژه رو قرار دادید.
    من هم درخواست دارم تا اینکه شما کدی برای خرید سکه بگذارید.
    البته من فکرم اینه که میشه همین کد رو تغییر داد تا بعد از خرید به دیتابیس سکه اضافه کنه و برای دفعه بعد به بازار نره تا چک کنه
    اما چون توی جاوا تازه کارم نمی دونم باس کدوم کد ها رو تغییر بدم.
    اگه شما بگید ممنون میشم

  35. #235

    نقل قول: پرداخت درون برنامه ای

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

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

    موفق باشی

  36. #236

    نقل قول: پرداخت درون برنامه ای

    با سلام
    من پرداخت درون برنامه ای رو به برنامم اضافه کرده ام . ولی نمیدونم کجا باید متدی که دیتا ها را برای یوزر آپدیت میکنه بنویسم .
    1- اگه خرید موفقیت امیز بود کجا میشه ؟
    2- اگه قبلا خریده بود کجا میشه ؟

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

  37. #237

    نقل قول: پرداخت درون برنامه ای

    نقل قول نوشته شده توسط saeid222 مشاهده تاپیک
    با سلام
    من پرداخت درون برنامه ای رو به برنامم اضافه کرده ام . ولی نمیدونم کجا باید متدی که دیتا ها را برای یوزر آپدیت میکنه بنویسم .
    1- اگه خرید موفقیت امیز بود کجا میشه ؟
    2- اگه قبلا خریده بود کجا میشه ؟

    ممنون راهنمایی کنید
    تو اکتیویتی خرید , تابع updateUi() رو پیدا کن و به این نمونه توجه کن:

    public void updateUi() {

    if (mIsPremium) {

    "اگر کاربر ویژه باشه این کد ها اجرا بشه"
    }

    else
    {

    "اگر کاربر ویژه نباشه این کد ها اجرا بشه"

    }
    }

  38. #238

    نقل قول: پرداخت درون برنامه ای

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

     if (mIsPremium) {                 
    "اگر کاربر ویژه باشه این کد ها اجرا بشه"
    }



    بعد کد مربوط به payload رو تغییر دادم تا با اون چیزی که خریدم فرق داشته باشه .
    حالا کلا میگه کاربر premium است !!!!
    کجا رو میشه اشتباه کرده باشم .
    تا دکمه خرید رو میزنم یه لحظه بازار باز میشه و مینویسه انجام شد)

    <ویرایش>
    این کد توی متد onCreate اجرا میشه :
    IabHelper.QueryInventoryFinishedListener
    توی این متد بود که گفت کاربر premium است
    mIsPremium = inventory.hasPurchase(SKU_PREMIUM);
    و مقدار true ریخته میشه توی mIsPremium
    آخرین ویرایش به وسیله saeid222 : دوشنبه 03 آذر 1393 در 20:56 عصر

  39. #239

    نقل قول: پرداخت درون برنامه ای

    دوستان کسی در مورد پرداخت درون برنامه ای نمیتونخ کمک کنه ؟
    کاملا گیج شدم م م م م

  40. #240

    نقل قول: پرداخت درون برنامه ای

    با سلام خدمت همه دوستان مخصوصا آقا حامد گل که خیلی زحمت میکشن

    دوستان من با کمک برنامه حامد یه پرداخت درون برنامه ای درست کردم امتحانشم کردم ، رفت صفحه درون پرداخت رو باز کرد و خرید انجام شد و برگشت به برنامه و پیغام "KHARID" رو هم نشون داد فقط چون کد ها رو کپی کردم و چیزی ازشون سر نمیارم نمیدونم که آیا درست انجام دادم یا نه

    کد ها رو میذارم لطفا یه چک بکنید و همچنین در صورت امکان جاهائی که توضیح خواستم در حد چند کلمه بگین چی کار میکنن

    سوالات :
    1- قسمت تعاریف میباشد

    2- چیه و چرا ؟

    3-چک میکنه که آیا کاربر VIP هی یا نه

    3_A نمیدونم

    3_B با کلیک بر روی دکمه به صفحه پرداخت درون برنامه ای میرود

    3_C نمیدونم

    3_D نمیدونم

    1_4 نمیدونم

    2_4 نمیدونم

    3_4 بعد از پرداخت این تابع فراخانی میشود


    public class Begin extends Activity {


    private Button btn_free;
    private Button btn_bronzi;

    /////// 1
    static final String TAG = "Kharid_daron Barnamei";
    static final String SKU_PREMIUM = "bronzi";
    boolean mIsPremium = false;
    static final int RC_REQUEST = 10001 ;
    IabHelper mHelper;
    //////////////////////// end 1

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.begin);

    btn_bronzi = (Button) findViewById(R.id.btn_bronzi);


    ////////// 2
    String base64EncodedPublicKey = "MIHNMA0GCSqGSIb3DQEBAQUAA4G7ADCBtwKBrwDX7ntTlHQys 2zu7liNpiNo9RyPY1Q8/UEAtmAw8KnoPQir7qgaQhY15n1osaenZeLD2GWRquzrQ5ub2lG NwoOIpOoIMkzQcVuZt/sSOlY6a1PQkEFElLtbOyQcweSkIwy4PDJ4FlFuE1jBqKPKY7UT adnDNym0xck1s5PbkxsmrhGkNKTyCnJLsXTgs5D2X9Ic3XbmWN k/DwhVEUFKzgw5/CnwnD5iiACuRG7z9r0CAwEAAQ==";

    mHelper = new IabHelper(this, base64EncodedPublicKey);
    Log.d(TAG, "Starting setup.");
    mHelper.startSetup(new IabHelper.OnIabSetupFinishedListener() {
    public void onIabSetupFinished(IabResult result) {
    Log.d(TAG, "Setup finished.");
    if (!result.isSuccess()) {
    Log.d(TAG, "Problem setting up In-app Billing: " + result);
    }
    mHelper.queryInventoryAsync(mGotInventoryListener) ;
    }
    });
    }
    ////////////////////////end 2


    //////////////////////3

    /////3_A baraye inke bedonim karbar az aval vip has ya na
    IabHelper.QueryInventoryFinishedListener mGotInventoryListener = new IabHelper.QueryInventoryFinishedListener() {
    public void onQueryInventoryFinished(IabResult result, Inventory inventory) {
    Log.d(TAG, "Query inventory finished.");
    if (result.isFailure()) {
    Log.d(TAG, "Failed to query inventory: " + result);
    return;
    }
    else {
    Log.d(TAG, "Query inventory was successful.");
    mIsPremium = inventory.hasPurchase(SKU_PREMIUM);

    Log.d(TAG, "User is " + (mIsPremium ? "PREMIUM" : "NOT PREMIUM"));
    }

    Log.d(TAG, "Initial inventory query finished; enabling main UI.");
    }

    };
    ////End 3_A

    ////3_B ba click bar roye dokme etefagh miyoftad

    public void onOnlineUpgradeAppButtonClickedbronzi(View arg0) {
    Log.d(TAG, "Upgrade button clicked; launching purchase flow for upgrade.");
    String payload = "inbarnametavasotehamedjjsakhteshodeast";
    mHelper.launchPurchaseFlow(this, SKU_PREMIUM, RC_REQUEST,
    mPurchaseFinishedListener, payload);
    }

    /////end 3_B

    ///// 3_C bayad hamontory bashad
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    Log.d(TAG, "onActivityResult(" + requestCode + "," + resultCode + "," + data);
    if (!mHelper.handleActivityResult(requestCode, resultCode, data)) {
    super.onActivityResult(requestCode, resultCode, data);
    } else {
    Log.d(TAG, "onActivityResult handled by IABUtil.");
    }

    }
    ////end 3_C

    //////3_D

    boolean verifyDeveloperPayload(Purchase p) {
    String payload = p.getDeveloperPayload();
    return true;
    }
    ////////

    ////////////////////////////////////////end 3

    //////4_1
    IabHelper.OnIabPurchaseFinishedListener mPurchaseFinishedListener = new IabHelper.OnIabPurchaseFinishedListener() {
    public void onIabPurchaseFinished(IabResult result, Purchase purchase) {
    Log.d(TAG, "Purchase finished: " + result + ", purchase: " + purchase);
    if (result.isFailure()) {
    Log.d(TAG, "Error purchasing: " + result);
    return;
    }
    if (!verifyDeveloperPayload(purchase)) {

    return;
    }

    Log.d(TAG, "Purchase successful.");

    if (purchase.getSku().equals(SKU_PREMIUM)) {
    Log.d(TAG, "Purchase is premium upgrade. Congratulating user.");
    mIsPremium = true;
    updateUi();

    }
    }
    };
    //////////////////end 4_1

    //////4_2

    @Override
    public void onDestroy() {
    super.onDestroy();

    Log.d(TAG, "Destroying helper.");
    if (mHelper != null) mHelper.dispose();
    mHelper = null;
    }
    //////end 4_2

    //////4_3
    public void updateUi() {

    if (mIsPremium) {

    Toast.makeText(getApplicationContext(), "KHARID", Toast.LENGTH_SHORT).show();
    }

    }

    /////////end 4_3
    /////end 4

    }



صفحه 6 از 10 اولاول ... 45678 ... آخرآخر

تاپیک های مشابه

  1. شماره گیری اتوماتیک از درون برنامه
    نوشته شده توسط مهران جمشیدی در بخش کامپوننت های سایر شرکت ها، و توسعه کامپوننت
    پاسخ: 10
    آخرین پست: شنبه 18 آبان 1387, 06:23 صبح
  2. اجرای یک کد دلفی از درون برنامه دلفی
    نوشته شده توسط Mahdavi در بخش برنامه نویسی در Delphi
    پاسخ: 2
    آخرین پست: دوشنبه 17 آذر 1382, 14:46 عصر
  3. پاسخ: 13
    آخرین پست: دوشنبه 03 آذر 1382, 02:04 صبح
  4. Disconnect از درون برنامه
    نوشته شده توسط ساران سافت در بخش VB.NET
    پاسخ: 3
    آخرین پست: پنج شنبه 29 آبان 1382, 14:56 عصر
  5. اجرای برنامه های exe از درون برنامه دلفی
    نوشته شده توسط reza5 در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 3
    آخرین پست: چهارشنبه 30 مهر 1382, 17:02 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •