适配android 13

This commit is contained in:
Lihongda 2024-01-05 02:05:37 +08:00
parent a177e6ebf7
commit 7e2507358f
2 changed files with 68 additions and 2 deletions

65
android12.gradle Normal file
View File

@ -0,0 +1,65 @@
/**
* Android 12 exported
*/
android.applicationVariants.all { variant ->
variant.outputs.each { output ->
def processManifest = output.getProcessManifestProvider().get()
println("-------1---- ${processManifest.name} ----------- ")
processManifest.doLast { task ->
def outputDir = task.multiApkManifestOutputDirectory
File outputDirectory
if (outputDir instanceof File) {
outputDirectory = outputDir
} else {
outputDirectory = outputDir.get().asFile
}
File manifestOutFile = file("$outputDirectory/AndroidManifest.xml")
if (manifestOutFile.exists() && manifestOutFile.canRead() && manifestOutFile.canWrite()) {
def manifestFile = manifestOutFile
/// false namespace androidSpace nameTag
def xml = new groovy.util.XmlParser(false, false).parse(manifestFile)
def exportedTag = "android:exported"
def nameTag = "android:name"
/// space
//def androidSpace = new groovy.xml.Namespace('http://schemas.android.com/apk/res/android', 'android')
def nodes = xml.application[0].'*'.findAll {
// exported
// exportedTag it.attribute(androidSpace.exported)
(it.name() == 'activity' || it.name() == 'receiver' || it.name() == 'service' || it.name() == 'activity-alias') && it.attribute(exportedTag) == null
}
/// exported false
nodes.each {
def isMain = false
it.each {
if (it.name() == "intent-filter") {
it.each {
if (it.name() == "action") {
// nameTag it.attribute(androidSpace.name)
if (it.attributes().get(nameTag) == "android.intent.action.MAIN") {
isMain = true
println("......................MAIN FOUND......................")
}
}
}
}
}
it.attributes().put(exportedTag, "${isMain}")
}
PrintWriter pw = new PrintWriter(manifestFile)
pw.write(groovy.xml.XmlUtil.serialize(xml))
pw.close()
}
}
}
}

View File

@ -15,8 +15,8 @@ import androidx.multidex.MultiDexApplication;
import com.alibaba.sdk.android.push.CloudPushService; import com.alibaba.sdk.android.push.CloudPushService;
import com.alibaba.sdk.android.push.CommonCallback; import com.alibaba.sdk.android.push.CommonCallback;
import com.alibaba.sdk.android.push.huawei.HuaWeiRegister;
import com.alibaba.sdk.android.push.noonesdk.PushServiceFactory; import com.alibaba.sdk.android.push.noonesdk.PushServiceFactory;
import com.alibaba.sdk.android.push.register.HuaWeiRegister;
import com.alibaba.sdk.android.push.register.MiPushRegister; import com.alibaba.sdk.android.push.register.MiPushRegister;
import com.ifish.utils.SystemUtil; import com.ifish.utils.SystemUtil;
import com.p2p.core.P2PSpecial.P2PSpecial; import com.p2p.core.P2PSpecial.P2PSpecial;
@ -106,6 +106,7 @@ public class BaseApplication extends MultiDexApplication {
private void initalipushSDK() { private void initalipushSDK() {
PushServiceFactory.init(this); PushServiceFactory.init(this);
final CloudPushService pushService = PushServiceFactory.getCloudPushService(); final CloudPushService pushService = PushServiceFactory.getCloudPushService();
pushService.register(this, new CommonCallback() { pushService.register(this, new CommonCallback() {
@Override @Override