第三方app:
open = (Button) findViewById(R.id.button); open.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { JSONObject json = new JSONObject(); try { json.put("loginflag", false);//此值必须为false json.put("ip", "192.168.0.91");//服务器地址 json.put("port", "6661");//服务器端口号 json.put("account", "wubj1");//用户账号 json.put("password", "123456");//用户密码 json.put("domain","domin");//域名 Intent service = new Intent("com.qim.basdk.service.BAMainService"); service.setPackage("com.qim.im"); service.putExtra("params", json.toString()); startService(service); } catch (JSONException e) { e.printStackTrace(); } SystemClock.sleep(1000); Intent intent = new Intent(); ComponentName cn = new ComponentName("com.qim.im", "com.qim.im.ui.view.BAMainActivity"); intent.setComponent(cn); intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent);我们的app:
mainferst里面设置:
<service android:name="com.qim.basdk.service.BAMainService" android:enabled="true" android:exported="true" > <intent-filter> <action android:name="com.qim.basdk.service.BAMainService" android:priority="1000" /> </intent-filter> </service>mainService里面:
@Override public int onStartCommand(Intent intent, int flags, int startId) { String params = intent.getStringExtra("params"); Log.i("abcd","onstartCommand获取到数据"+params); if (Build.VERSION.SDK_INT < 18) { startForeground(BAServiceWakeReceiver.WAKE_SERVICE_ID, new Notification());//API < 18 ,此方法能有效隐藏Notification上的图标 } else { Intent innerIntent = new Intent(this, BAWakeMainInnerService.class); startService(innerIntent); startForeground(BAServiceWakeReceiver.WAKE_SERVICE_ID, new Notification()); } return START_STICKY; }