من داخل manifest برای اکتیویتیم چنین چیزی تعریف کردم:
<activity android:name=".ResultPayActivity" android:screenOrientation="portrait"> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="sanduqcheh" /> </intent-filter> </activity>
و urlام رو به این شکل تعریف میکنم:
<a href="intent://12#Intent;scheme=sanduqcheh;package=com.example.pegah_system.myapplicationtest;end"></a>
اما وقتی این urlرو داخل مروگر گوشی که برنامه نصب هست میزنم برنامه رو باز نمیکنه و urlرو داخل گوگل سرچ میکنه.
این روش رو هم تست کردم که داخل manifestبه این شکل تعریف بشه :
<intent-filter> <action android:name="com.androidsrc.launchfrombrowser" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> </intent-filter>
و داخل جاوا:
private static final String LAUNCH_FROM_URL = "com.androidsrc.launchfrombrowser"; Intent intent = getIntent(); if(intent != null && intent.getAction().equals(LAUNCH_FROM_URL)){ Bundle bundle = intent.getExtras(); if(bundle != null){ String msgFromBrowserUrl = bundle.getString("msg_from_browser"); txtResultPay.setText(msgFromBrowserUrl); } }else{ txtResultPay.setText("Normal application launch"); }
اما این هم همین مشکل رو داشت. الان مشکل کار من کجاست؟ ایا باید url در جایی ثبت بشه ؟
کاربرد این مورد اینه که میخام وقتی در درگاه پرداخت ،پرداخت اکی شد به وب سرویسم کال بک بشه و از اونجا بعد از عملیات هایی اپم مجدد ران بشه . ممنون میشم راهنمایی کنین
اولا اینکه باید url تون به خودی خود باز بشه و تعریف شده باشه url ای که ناشناس باشه و نمی تونه مطمئنا پیدا کنه
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)