您的位置:首页 > 移动开发 > Android开发

Android开发中遇到的一些小问题

2017-06-27 09:45 204 查看


银联支付:

最近刚接手有由外包公司转接过来的项目,其中还有包括支付宝、微信、银联支付等第三方支付;可奇怪的时银联支付界面打不开(线上的完全没问题),并且闪退,于是在官方文档对照代码后没有问题,百度后依然还是没有发现有问题,最后还是发现原来是 .so文件没有打包到apk中,在Android
studio中是这样的:

注意:这种方法是在导入第三方sdk时,把 .so文件添加到libs文件里面的

sourceSets {
    main {
       jniLibs.srcDirs=
['libs']//必须将.so文件需打入apk中  

 }

}

 但是后来在另外一个项目中接入极光推送的sdk时,.so文件是放在src/main/jniLibs下的,应该是这样的:

sourceSets.main {
jniLibs.srcDir 'src/main/jniLibs'
}

2、System.exit(0)

使用System.exit(0)退出应用或Activity时,activity是不走onDestroy()方法的,使用finish()才会按照activity的生命周期走。

 
3、一个简单的Toast为什么不显示

可能是手机的设置禁止了,跟代码无关。

4、设置activity为全屏的问题:

 我是这么做的:根据网上提供的方法在manifest中为activity添加
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 
但是直接闪退抛出错误信息:You need to use a Theme.AppCompat
theme (or descendant) with thisactivity. 
解决办法:

将上面改为: android:theme="@style/Theme.AppCompat.Light.NoActionBar"

这样就将标题栏去掉,但还是有系统自带的状态栏

在setContentView()方法前面添加:getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);//隐藏状态栏

setContentView(R.layout.activity_main);


 
5、使用shareSdk微信登陆的时候:

wxapi这个包必须在包名的下面(例如:com.baidu.xxx.wxapi.WXEntryActivity),遇见这个问题的原因是在开发的后期

突然要更改包名,结果目录发生了变化,调用微信的登录接口死活不走相关的回掉方法,无奈之下询问客服之后才发现问题。




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: