-
پرداخت درون برنامه ای
-
نقل قول: پرداخت درون برنامه ای
از طریق برنامه trial driver میتونی درست کنی
من برا تمرین یک پروژه پرداخت درون برنامه ای ساختم
لینک:
http://uplod.ir/u9549c6n970b/billing.zip.htm
-
نقل قول: پرداخت درون برنامه ای
پرداخت درون برنامه ای چیه؟
-
نقل قول: پرداخت درون برنامه ای
نقل قول:
نوشته شده توسط
farhadfery
پرداخت درون برنامه ای چیه؟
بازار این امکان رو فراهم کرده که شما بتونی محتوای برنامت رو مثل کتاب و ... از داخل برنامه بفروشی مثلا یه کتابخونه داری ولی میخوایی کتاب رو از داخلش به فروش برسونی .با استفاده از این کار دیگه لازم نیست بری درگاه بانک بگیری و ... از این امکان استفاده میکنی و با بازار تصویه میکنی.
البته فک کنم کندو هم داره.
-
نقل قول: پرداخت درون برنامه ای
-
نقل قول: پرداخت درون برنامه ای
»مثال رو من نتونستم اجرا کتم ... موضوع خیلی جالبه ممکنه بیشتر توصیح بدید ؟
-
نقل قول: پرداخت درون برنامه ای
چرا اجرا نشد
برا دوستمون که کار کرد
-
نقل قول: پرداخت درون برنامه ای
نقل قول:
نوشته شده توسط
mohsen22
»مثال رو من نتونستم اجرا کتم ... موضوع خیلی جالبه ممکنه بیشتر توصیح بدید ؟
پرداخت درون برنامهای بازار
پرداخت درون برنامهای یکی از سرویسهای بازار است که فروش محتوای دیجیتال از درون برنامهها را ممکن میکند. شما میتوانید از این سرویس برای فروش محتوای مختلف مانند محتوای قابل دانلود مثل موسیقی، تصاویر و محتوای غیر قابل دانلود مثل افزایش مرحله یا خرید سکه در بازیها استفاده کنید.
وقتی از پرداخت درون برنامهای بازار برای فروش محتوا استفاده میکنید، کلیهٔ مراحل پرداخت توسط بازار انجام میشود. بنابراین نیازی نیست برنامهٔ شما به صورت مستقیم پردازش مالی پرداختها را انجام دهد. بازار دقیقاً از همان روش خرید برنامههای غیر رایگان برای پرداختهای درون برنامهای استفاده میکند. بنابراین روند خرید برای کاربران بسیار آشنا خواهد بود.
هر برنامهای که در بازار منتشر میکنید میتواند از پرداخت درون برنامهای استفاده کند. به غیر از داشتن حساب توسعهدهنده که برای انتشار برنامهها ساختهاید، نیازی به ساختن هیچ حساب دیگری نیست. برای کمک به پیادهسازی پرداخت درون برنامهای از مستندات پرداخت درون برنامهای که آماده شده است، استفاده نمایید.
-
نقل قول: پرداخت درون برنامه ای
باز هم عالی و کامل جواب دادید... مممنون از وقت که گذاشتید.. راستی شما کاندید مدیریت اندروید نشدید ؟
ماشالله خیلی برازنده این سمت هستید ها .... (ما کاندید می خواهیم یالله ......)
-
نقل قول: پرداخت درون برنامه ای
نقل قول:
نوشته شده توسط
hamedjj
چرا اجرا نشد
برا دوستمون که کار کرد
هم سورس باز نشد... هم فایل نصبی !!! شما نسخه تست شده رو دارید ؟ مرسی
-
نقل قول: پرداخت درون برنامه ای
یه پروژه بساز با همون نام پکیج برنامه
بعد فایل ها را توش کپی کن درست میشه
تو سایت بازار در قسمت یک شروع سریع تمام پروژه را توضیح داده
من فقط با این پروژه فهم پرداخت درون برنامه ای را ساده تر کردم.
برنامه به این صورته که در صفحه اول یک دکمه قرار دارد که با تپ روی آن وارد صفحه ی پرداخت بازار می شوید و پس از پرداخت وجه و تایید سیستم برنامه شما را با intent به صفحه دوم هدایت می کند.
(با تپ برروی دکمه و پرداخت وجه ، کلاس update ui اجرا میشه که همام کد intent به صفحه ی دوم توش قرار دارد و با هر بار وارد شدن در برنامه و با تپ روی دکمه اون کلاس اجرا می شود)
بعد از این هر بار وارد برنامه شدید با تپ روی دکمه وارد صفحه دوم شوید
البته بگم که وقتی وارد برنامه شدید باید به چند ثانیه به اینترنت وصل باشید تا بازار شما را به طور خودکار تایید کند
این برنامه به صورت ارتقا کاربران به حساب کاربری ویژه است.
برای امنیت برنامه یک رشته string در برنامه قرار داده شده است که با وارد شدن به برنامه اون به طور خودکار از طرف بازار بررسی می شود و در صورت ویژه بودن حساب شما قسمت های قفل شده برنامه (همان دکمه ای که به صفحه دوم میره) باز می شود.
همه چیز درسایت بازار توضیح داده شده است.
-
نقل قول: پرداخت درون برنامه ای
package com.hamed.billing;
import com.hamed.billing.util.IabHelper;
import com.hamed.billing.util.IabResult;
import com.hamed.billing.util.Inventory;
import com.hamed.billing.util.Purchase;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Intent;
public class Main extends Activity {
Button btn1;
// Debug tag, for logging
static final String TAG = "testbilling";
// SKUs for our products: the premium upgrade (non-consumable)
static final String SKU_PREMIUM = "hamed.test";
// 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) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
btn1 = (Button) findViewById(R.id.button1);
String base64EncodedPublicKey = "MIHNMA0GCSqGSIb3DQEBAQUAA4G7ADCBtwKBrwDHPaX/2b58zYjvRygXQvYgvIWjCT7A0FirRkmt5Nm3FxnjsOnCu/6Yer9AoOFd+EYU+uORahbZXge39DzyMKwiatY0UcVycaI8bU+g JAAvwL+/BxSifJ+jrHRbWCg9Nd6dnIYSMuGyoFM/3cdX+6XSYh0R58adtGlWBVBUc0/GmGPMFCkx1JndO2wBZrzMc2eO+OTqoFY+EyLospMP3GHlGgI6w 1JvtAip7P+hD10CAwEAAQ==";
// 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()) {
// 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) ;
}
});
}
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.");
// does the user have the premium upgrade?
mIsPremium = inventory.hasPurchase(SKU_PREMIUM);
// update UI accordingly
Log.d(TAG, "User is " + (mIsPremium ? "PREMIUM" : "NOT PREMIUM"));
}
updateUi();
setWaitScreen(false);
Log.d(TAG, "Initial inventory query finished; enabling main UI.");
}
};
public void onUpgradeAppButtonClicked(View arg0) {
Log.d(TAG, "Upgrade button clicked; launching purchase flow for upgrade.");
setWaitScreen(true);
/* 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 = "qwertyuiop";
mHelper.launchPurchaseFlow(this, SKU_PREMIUM, RC_REQUEST,
mPurchaseFinishedListener, "qwertyuiop");
}
@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()) {
Log.d(TAG, "Error purchasing: " + result);
setWaitScreen(false);
return;
}
if (!verifyDeveloperPayload(purchase)) {
complain("Error purchasing. Authenticity verification failed.");
setWaitScreen(false);
return;
}
Log.d(TAG, "Purchase successful.");
if (purchase.getSku().equals(SKU_PREMIUM)) {
Log.d(TAG, "Purchase is premium upgrade. Congratulating user.");
alert("Thank you for upgrading to premium!");
mIsPremium = true;
updateUi();
setWaitScreen(false);
}
}
};
@Override
public void onDestroy() {
super.onDestroy();
Log.d(TAG, "Destroying helper.");
if (mHelper != null) mHelper.dispose();
mHelper = null;
}
public void updateUi() {
// update the car color to reflect premium status or lack thereof
btn1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
Intent intent = new Intent(Main.this, Page2.class);
startActivity(intent);
}
});
}
// Enables or disables the "please wait" screen.
void setWaitScreen(boolean set) {
findViewById(R.id.screen_wait).setVisibility(set ? View.VISIBLE : View.GONE);
}
void complain(String message) {
Log.e(TAG, "**** testbilling Error: " + message);
alert("Error: " + message);
}
void alert(String message) {
AlertDialog.Builder bld = new AlertDialog.Builder(this);
bld.setMessage(message);
bld.setNeutralButton("OK", null);
Log.d(TAG, "Showing alert dialog: " + message);
bld.create().show();
}
}
-
نقل قول: پرداخت درون برنامه ای
-
نقل قول: پرداخت درون برنامه ای
سلام. ببخشید من نتونستم پروژه شما رو اجرا کنم.
برنامه force close میده و داخل log مینویسه:
http://www.xum.ir/images/2014/01/06/1.png
من می خوام یک اکتیویتی داشته باشم که داخلش سه تا دکمه باشه و هر کدوم واسه خرید یه چیز مخصوص باشه ، لطفا راهنماییم کنید.
-
نقل قول: پرداخت درون برنامه ای
بیا اینم پروژه صحیح و سالم :
http://uplod.ir/z5buybs9zzog/billing.zip.htm
برای جزئیات بیشتر و همچنین استفاده از کالاهای مصرفی برنامه TriviaDrive را دانلود کن
از این آموزش ها هم استفاده کن :
http://pardakht.cafebazaar.ir/doc/quickstart/?l=fa
-
نقل قول: پرداخت درون برنامه ای
-
نقل قول: پرداخت درون برنامه ای
این هم لینک عکسش
http://www.xum.ir/images/2014/01/06/CapturevOTlM.png
من نمی دونم چرا پرداخت درون برنامه ای این همه واسه من گنگ هست. الان یک هفته هست دارم این را کار میکنم اما جواب نمی گیرم.
دائاش وقت داری با team viwer به من ریموت شی پروژه من را یه چک کنی. خواهش میکنم
-
نقل قول: پرداخت درون برنامه ای
همه چیز بر میگرده به این دو قسمت :
public void onUpgradeAppButtonClicked(View arg0) {
Log.d(TAG, "Upgrade button clicked; launching purchase flow for upgrade.");
setWaitScreen(true);
/* 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 = "qwertyuiop";
mHelper.launchPurchaseFlow(this, SKU_PREMIUM, RC_REQUEST,
mPurchaseFinishedListener, "qwertyuiop");
}
کد بالا وقتی بر روی دکمه کلیک کرد premium بودن او را جستجو می کند
اگر premium بود میره به قسمت پایین برنامه updateUi
public void updateUi() {
if (mIsPremium) {
// update the car color to reflect premium status or lack thereof
btn1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
Intent intent = new Intent(Main.this, Page2.class);
startActivity(intent);
}
});
}
}
و برنامه آپدیت میشه
البته تو او کدی که قرار دادم قسمت updateui اشتباه داشت که if قرار نداده بودم و فقط یک بار باز میکرد
احتمالا بعدا کاملا درست می کنم
-
نقل قول: پرداخت درون برنامه ای
داداش واقعا ممنون هستم که انقدر سریع جواب من میدی، ولی باز هم فورس کلوز داد. اگر بتونی کمکم کنی که امروز توی این مبحث به نتیجه ای برسم واقعا ممنونت میشم. چون خیلی وقته درگیرش هستم
باز هم عکس بزارم واسه log?
-
نقل قول: پرداخت درون برنامه ای
آقا من با همه چیز این "پرداخت درون برنامه ای" مشکل دارم. من چندتا سوال دارم؟
وقتی کاربر پریمیوم میشه دیگه چه نیازی هست برنامه به اینترنت وصل بشه و پریمیوم بودن کاربر را تایید کنه؟!! (چندتا برنامه هم توی بازار بود تست کردم، بعد از اینکه پریمیوم میشی دیگه نیازی نیست برنامه به اینترنت متصل بشه)
و سوال بزرگتر اینکه چرا من نمیتونم پیادش کنم؟؟؟؟!!!!! خیلی دارم اذیت میشم سر این قضیه...
-
نقل قول: پرداخت درون برنامه ای
اینترنت برای اینه که اگر این برنامه بر روی دستگاه دیگری نصب بشه هر بار با اون رشته ی string یه چک بشه ببینه او حساب پول پرداخت کرده یا نه.
اگر این قابلیت نباشه من میتونم با حسابم پریمیوم بشم و با حساب خودم بر روی چند گوشی نصب کنم و آنها با بار اول که به اینترنت وصل میشن تایید را میگیرند و از برنامه استفاده می کنند.
البته اگه نمیخوای دوباره به اینترنت وصل بشه میتونی در کلاس UpdateUi از sharedprefences استفاده کنی.
اگر می خوای به اینترنت وصل بشه می تونی مانند برنامه های دیگر همان اول یه loading بزاری تا چک کنه و بعد وارد برنامه بشه
من این برنامه را خیلی ساده نوشتم
چک کردن دسترسی به اینترنت هم بزاری خیلی خوبه
این برنامه که من ساختم در هر بار ورود به اینترنت نیاز دارد (البته loading اولیه ندارد) و پس از شناسایی حساب رنگ button کریسمس (کامل) سبز می شود.
چک کردن دسترسی به اینترنت هم دارد. ((البته برنامه زیاد حرفه ای نیست ))
http://cafebazaar.ir/app/com.hamed.christmas/?l=fa
منظورت برنامه را نمیتونی اجرا کنی یا تو کدها مشکل داری؟
-
نقل قول: پرداخت درون برنامه ای
داداش این سمپل که گذاشتی مشکل داره، میتونی درستش کنی و بعد بذاریش؟
کسی میتونه تو زمینه پرداخت درون برنامه ای کمک کنه؟
-
نقل قول: پرداخت درون برنامه ای
کسی میدونه برای انجین یونیتی چه جوری میشه از پرداخت درون برنامه ی بازار استفاده کرد ؟؟؟
-
نقل قول: پرداخت درون برنامه ای
بله واسه منم خطا داره و اجرا نمیشه... کاش میشد این بحث رو به نتیجه بروسونیم با کمک هم
-
نقل قول: پرداخت درون برنامه ای
من هم توی اجرای این کد نمونه مشکل داشتم
فکر کنم دلیلش این بود که برنامه با اندروید 2.3 کامپایل شده و من این نسخه رو ندارم روی اکلیپس:لبخندساده:
-
نقل قول: پرداخت درون برنامه ای
نقل قول:
نوشته شده توسط
hamedjj
یه پروژه بساز با همون نام پکیج برنامه
بعد فایل ها را توش کپی کن درست میشه
اینو تست نکردید؟
-
نقل قول: پرداخت درون برنامه ای
سلام کسی برنامشو به این روش نفروخته بیاد با هم یاد بده؟
اگر یه برنامه با تعداد layoutهای بالا داشته باشیم و بخوایم فقط یه بار پول بگیری باید چیکار کرد؟
نوشته های بازار رو خوندم ولی در سطح من نبود نتونستم چیزی بفهمم
اگه برای اساتید امکان داره به روش کامل توضیح بدن وعلمشون رو در اختیار ما هم بزارن
انگلیسی هیچی بلد نیستم ولی خداییش ببینید این خارجی ها چطوری علمشونو در اختیار هم میزارن
آدم کیف میکنه
-
نقل قول: پرداخت درون برنامه ای
من برای صفحه توسعه دهنده بازار در github یه پیام فرستادم که بچه نمیتونن از برنامه استفاده کنند و برنامه ارور میده
اونم گفت که روش پیاده سازی پرداخت درون برنامه ای خیلی سخته و دارند یه کاری میکنند که آسون بشه
اینم لینک کامنت ها:
https://github.com/congenialmobile/T...8a266ce773b0e3
البته سوالات خودتان را می توانید در لینک بالا بپرسید و فقط فکر کنم یه دو هفته دیگه جواب میده:لبخندساده:
براش یه پیام میزارم میگم آموزش تصویری درست کنه ببینم چی میگه
-
نقل قول: پرداخت درون برنامه ای
خوب یه سوال؟ چجوری صفحه ی خرید بازار باز میشه؟
-
نقل قول: پرداخت درون برنامه ای
از طریق برنامه بازار
باید نرم افزار بازار رو گوشی نصب باشه
-
نقل قول: پرداخت درون برنامه ای
نرم افزارش نصبه
من طرف وبشش همه کار رو کردم
حالا چجوری به این شرط بدم
اگه اینو پرداخت کرده باشه بره تو؟ یا نکرده باشه وصل شه به بازار
http://upir.ir/files/118358f092a71.jpg
-
نقل قول: پرداخت درون برنامه ای
این چیه ؟ payload و به چه دردی میخوره؟
-
نقل قول: پرداخت درون برنامه ای
نقل قول:
نوشته شده توسط
moh_sen201
نقل قول:
نوشته شده توسط
moh_sen201
خوب یه سوال؟ چجوری صفحه ی خرید بازار باز میشه؟
نقل قول:
نوشته شده توسط
moh_sen201
این چیه ؟ payload و به چه دردی میخوره؟
اینکار با موفقیت انجام شد
بازار خیلی توضیح داده که اصلا نیاز نیست!
روال کارش آسون هست
و چند روز بعد برای دوستان فیلم آموزشی میزارم
-
نقل قول: پرداخت درون برنامه ای
پیاده سازی api را می خوای آموزش بدی یا فقط قسمت راهنمای شروع سریع؟؟
چون برنامه trivialdrive آسونه و راحت سیستم پرداخت بازار را میشه از روش پیاده سازی کرد اما در قسمت پیاده سازی api یه کم مشکله
-
نقل قول: پرداخت درون برنامه ای
نقل قول:
نوشته شده توسط
hamedjj
پیاده سازی api را می خوای آموزش بدی یا فقط قسمت راهنمای شروع سریع؟؟
چون برنامه trivialdrive آسونه و راحت سیستم پرداخت بازار را میشه از روش پیاده سازی کرد اما در قسمت پیاده سازی api یه کم مشکله
پیاده سازی api رو فیلم میزارم
چیز سختی نبود
-
نقل قول: پرداخت درون برنامه ای
سلام
من تازه کارم لطفا به این سوال جواب بدین
اول که تو بازار نوشته برنامه رو آپلود کنید بعد میگه کدها رو تو برنامه کپی کنین. خب اینطوری چطوری این تغییرات تو برنامه اعمال میشه؟
-
نقل قول: پرداخت درون برنامه ای
میگه اول پروژه را بساز و اجازه پرداخت درون برنامه ای را در مانیفست برنامه قرار بده.
بعد از اینکه آپلود کردی در پنل کاربری خودتان قسمت ورود به پرداخت درون برنامه ای باز میشه میتوانید از آنجا محصولات خودتان را ثبت کنید و کد محصولات را در برنامه قرار دهید.
تیم بازار به من گفتند که دنبال راه حلی برای راحتی در پیاده سازی پرداخت درون برنامه ای هستند
اینجوری یکم سخته
-
نقل قول: پرداخت درون برنامه ای
حالا یه سوال دیگه. چجوری کالایی که از طریق پرداخت درون برنامه ای خرید شده رو مصرف کنم؟ یعنی مثلا الان خرید کردم, دفعه ی بعد بتونم دوباره همون رو خرید کنم؟
با تشکر
-
نقل قول: پرداخت درون برنامه ای
در مورد کالای مصرفی هنوز پروژه ای انجام ندادم که طرز کار باهاش را بدونم
فعلا فقط premium شدن را می تونم پیاده سازی کنم
اگر شما توانستید خری های قابل مصرف را پیاده سازی کنید حتما توضیحاتی در این تاپیک قرار دهید
اینجا هم یه سری توضیحات مبنی بر خرید های قابل مصرف گذاشته که حتما مطالعه کرده اید.
http://pardakht.cafebazaar.ir/doc/api/?l=fa
-
نقل قول: پرداخت درون برنامه ای
دوستان من نمی خواهم از ویژگی درون پرداختی بازار استفاده کنم من چگونه میتوانم این ویژگی رو برای اتصال مسقیم به بانکها انجام بدم ؟