个人免签支付系统短信监控自动回调源码APP|个人免签支付系统短信监控自动回调源码APP 实时自动回调!

功能实现:个人免签支付系统,短信监测自动回调源码APP 完美功能 实时监测回调!
设计思路及实现功能:
1.回调地址只需要填写自己写的网址的POST接口即可,
2.监测支付宝&微信收款信息提示,检测收款信息短信信息!收到后自动向预先设置好的请求地址去做自动回调。
监控各类银行短信,并实时发送回调,对接免签支付系统,应用与微信,支付宝转银行卡、收钱吧、农银信等接口监控回调。
开发工具及编程语言:Android Studio,JAVA android APP开发。
【个人免签支付系统短信监控自动回调源码APP|个人免签支付系统短信监控自动回调源码APP 实时自动回调!】个人免签支付系统短信监控自动回调源码APP|个人免签支付系统短信监控自动回调源码APP 实时自动回调!
文章图片

在这里插入代码片import com.zookj.android.http.JsonHttpResponseHandler; import com.zookj.android.http.RequestParams; public class MainActivity extends AppCompatActivity implements View.OnClickListener{private static final String TAG = "MainActivity"; private Toolbar myToolbar; private Button btnsetposturl; private FloatingActionButton btnshowlog; private EditText posturl; private SharedPreferences sp ; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); }private void initView() {sp = getSharedPreferences("url", Context.MODE_PRIVATE); myToolbar= (Toolbar) findViewById(R.id.my_toolbar); setSupportActionBar(myToolbar); btnsetposturl=(Button) findViewById(R.id.btnsetposturl); btnsetposturl.setOnClickListener(this); btnshowlog=(FloatingActionButton) findViewById(R.id.floatingshowlog); btnshowlog.setOnClickListener(this); posturl = (EditText) findViewById(R.id.posturl); if(getPostUrl()!=null) posturl.setHint(getPostUrl()); }@Override protected void onResume() { super.onResume(); boolean isAuthor=isNotificationServiceEnable(); if (!itAthor){//android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS是API 22才加入到Settings里,这里直接写死 startActivity(new Intent("android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS")); } }@Override protected void onDestroy() { super.onDestroy(); }/** * 是否已授权 * * @return */ private boolean isNotificationServiceEnable() { return NotificationManagerCompat.getEnabledListenerPackages(this).contains(getPackageName()); }@Override public void onClick(View v) { switch (v.getId()) { case R.id.btnsetposturl: posturl.setHint(null); setPostUrl(); break; case R.id.floatingshowlog: showLog(); break; } }private String getPostUrl(){ String posturlpath; posturlpath =sp.getString("zookj", ""); if (zookjpath==null) return null; else return zookjpath; }private void showLog() { //startActivity(new Intent(this, LogActivity.class)); openLynxActivity(); } private void openLynxActivity() { LynxConfig lynxConfig = new LynxConfig(); lynxConfig.setMaxNumberOfTracesToShow(4000)Intent lynxActivityIntent = LynxActivity.getIntent(this, lynxConfig); startActivity(lynxActivityIntent); } private void openSettingActivity(){ Intent intent = new Intent(MainActivity.this, PreferenceActivity.class); startActivity(intent); }@Override public boolean onCreateOptionsMenu(Menu menu) { // TODO Auto-generated method stub MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.main, menu); return true; }@Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.action_settings: // User chose the "Settings" item, show the app settings UI... openSettingActivity(); return true; default: // If we got here, the user's action was not recognized. // Invoke the superclass to handle it. return super.onOptionsItemSelected(item); } }}

    推荐阅读