2018年上半年技术总结

2018年上半年技术总结

前言

在忙了几乎近三四个月后,现在终于稍微闲了些,所以总结一些实际项目中有用的开发功能

1. 同一项目多包名打包

我觉得这个功能真是相当便利,尤其对于前期项目还不是特别稳定,但是针对多客户的开发者来说,但是也有一个很大的缺点,如果多包名对应的应用之间差异性较大,则会彼此间耦合度高,所以前期开发需要做好此部分的处理工作.
1.1 在app下的build.gradle文件的android子节点里进行配置

 productFlavors {
        APP1 {
            applicationId "com.lwyy.app1"
            resValue "string", "app_name", "APP1"
            manifestPlaceholders = [app_icon     : "@mipmap/ic_launcher_app1",
                                    provider_name: "com.lwyy.app1.provider",
                                    JPUSH_PKGNAME: "com.lwyy.app1",
                                    JPUSH_APPKEY : "a028430c9cb60fef55hjdfo4", 
                                    JPUSH_CHANNEL: "developer-default",
            ]
        }

        APP2 {
            applicationId "com.lwyy.app2"
            resValue "string", "app_name", "APP2"
            manifestPlaceholders = [app_icon     : "@mipmap/ic_launcher_app2",
                                    provider_name: "com.lwyy.app2.provider",
                                    JPUSH_PKGNAME: "com.lwyy.app2",
                                    JPUSH_APPKEY : "12e22a6793977bf580jhgf90", 
                                    JPUSH_CHANNEL: "developer-default",
            ]
        }

        APP3 {
            applicationId "com.lwyy.app3"
            resValue "string", "app_name", "APP3"
            manifestPlaceholders = [app_icon     : "@mipmap/ic_launcher_app3",
                                    provider_name: "com.lwyy.app3.provider",
                                    JPUSH_PKGNAME: "com.lwyy.app3",
                                    JPUSH_APPKEY : "3b4a2444314dde9fbhgud0", 
                                    JPUSH_CHANNEL: "developer-default", 
            ]
        }
    }

1.2 再在AndroidManifest.xml文件的对应位置进行如下配置:

在application子节点下 配置 
    android:icon="${app_icon}" 
    android:label="@string/app_name"

在provider子节点下配置
      <provider
            android:name="android.support.v4.content.FileProvider"
            android:authorities="${provider_name}"
            android:exported="false"
            android:grantUriPermissions="true">
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/path" />
        </provider>

2. 通知栏消息的监听和回复

通知栏消息的回复主要是针对国外的一些软件,比如Telegram,Messager等等,国内的我试了,不能回复

猜你喜欢

转载自blog.csdn.net/liuwanyouyue/article/details/81061112