第三方app开启自己app需要的操作

来源:互联网 发布:c语言!=eof怎么用 编辑:程序博客网 时间:2024/05/16 15:17

第三方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里面:

@Overridepublic 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;}