1: 如果你的项目中引入了 V7 包,会发现有大量的 theme, appcompat 报错,所以项目中最好从一开始就不引入v7
2: 另外如果你的项目中有使用到V4包里的 activiyFragment,Viewpage等 , 那么你需要单独引入下 V4 包(不要用太低的版本,低版本用不了)
3: unity的跳转, TransActivity2Context 是为了将获取到的activity转成 context, 也可以把application 里的context直接拿过来
4: 安卓的工具类
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 必须加上去 。 不然有些手机会跳转失败
public class Unity2Android {
private static Context mContext;
private static Unity2Android unity2Android;
public static Unity2Android getInstance() {
if (unity2Android == null) {
synchronized (Unity2Android.class) {
if (unity2Android == null) {
unity2Android = new Unity2Android();
}
}
}
return unity2Android;
}
private Unity2Android() {
mContext=BaseApplication.getContext();
}
public void toMain(MCallBack<String> callBack) {
// if (BaseApplication.spUsb != null) {
// }
BaseApplication.callBack=callBack;
String json = (String) SPUtil.get(mContext, MyConfig.user, "");
Intent intent = new Intent();
if (TextUtils.isEmpty(json)) {
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setClass(mContext, LoginActivity.class);
} else {
//初始化User
User.init();
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setClass(mContext, MainActivity.class);
}
mContext.startActivity(intent);
}
}
5 : 一些app自启动的问题, 直接通过跳转unity
public class UsbActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.i("UsbActivity", "onCreate: ---------"+BaseApplication.start);
if(BaseApplication.start){
BaseApplication.start = false;
try {
Intent intent = new Intent();
intent.setClassName("com.Company.unitydemo", "com.unity3d.player.UnityPlayerActivity");
startActivity(intent);
} catch (Exception e) {
e.printStackTrace();
}
}
finish();
}
}