package com.limemobile.app.demo.pluginclienta; import com.limemobile.app.plugin.PluginClientActivity; import com.limemobile.app.plugin.internal.PluginClientManager; import com.limemobile.app.demo.pluginclienta.ClientABindService.ClientBinder; import com.limemobile.app.demo.pluginclienta.R; import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.content.ServiceConnection; import android.graphics.Color; import android.os.Bundle; import android.os.IBinder; import android.util.Log; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup.LayoutParams; import android.widget.Button; import android.widget.LinearLayout; import android.widget.Toast; public class MainActivity extends PluginClientActivity { private static final String TAG = "Client-MainActivity"; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); initView(savedInstanceState); } private void initView(Bundle savedInstanceState) { // that.setContentView(generateContentView(that)); setContentView(R.layout.activity_main); findViewById(R.id.button1).setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Toast.makeText(mContext, "you clicked button", Toast.LENGTH_SHORT).show(); Intent intent = new Intent(mContext.getApplicationContext(), TestFragmentActivity.class); intent.putExtra("dl_extra", "from DL framework"); startActivityForResult(intent, 0); } }); findViewById(R.id.button2).setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent service = new Intent(mContext.getApplicationContext(), ClientAStartedService.class); service.setAction("start"); mContext.startService(service); } }); findViewById(R.id.button3).setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent service = new Intent(mContext, ClientAStartedService.class); service.setAction("插件的Service关闭"); mContext.startService(service); mContext.stopService(service); } }); findViewById(R.id.button4).setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent service = new Intent(mContext, ClientABindService.class); mContext.bindService(service, new ServiceConnection() { @Override public void onServiceConnected(ComponentName name, IBinder service) { ClientABindService.ClientBinder binder = (ClientBinder) service; binder.showToast(mContext); } @Override public void onServiceDisconnected(ComponentName name) { } }, 0); } }); findViewById(R.id.button5).setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent service = new Intent(mContext, ClientAStartedService.class); service.setAction("xxxxxxxx"); PluginClientManager.sharedInstance(mContext) .startPluginClientService(mContext, service, "com.limemobile.app.demo.pluginclientb", ".ClientBStartedService"); PluginClientManager.sharedInstance(mContext) .stopPluginClientService(mContext, service, "com.limemobile.app.demo.pluginclientb", ".ClientBStartedService"); } }); } private View generateContentView(final Context context) { LinearLayout layout = new LinearLayout(context); layout.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)); layout.setBackgroundColor(Color.parseColor("#F79AB5")); Button button = new Button(context); button.setText("Start TestActivity"); layout.addView(button, LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); button.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Toast.makeText(context, "you clicked button", Toast.LENGTH_SHORT).show(); Intent intent = new Intent(mContext, TestFragmentActivity.class); intent.putExtra("dl_extra", "from DL framework"); startActivityForResult(intent, 0); } }); return layout; } @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { Log.d(TAG, "onActivityResult resultCode=" + resultCode); if (resultCode == RESULT_FIRST_USER) { mContext.finish(); } super.onActivityResult(requestCode, resultCode, data); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } }