android 9 源码编译错误 error: cannot find symbol import android.os.UpdateEngine

本文解决在导入UpdateEngine包时遇到的编译错误问题,通过调整Android.mk文件中的LOCAL_SDK_VERSION配置,更改为LOCAL_PRIVATE_PLATFORM_APIS,成功解决了无法识别UpdateEngine类的问题。

今天导入UpdateEngine包,编译的时候报错:

vendor/nxp-opensource/fsl_imx_demo/NaLongUpgrade/app/src/main/java/com/mile8/nalongupgrade/MainActivity.java:9: error: cannot find symbol
import android.os.UpdateEngine;
                 ^
  symbol:   class UpdateEngine
  location: package android.os
vendor/nxp-opensource/fsl_imx_demo/NaLongUpgrade/app/src/main/java/com/mile8/nalongupgrade/MainActivity.java:23: error: cannot find symbol
	private UpdateEngine ue;
	        ^
  symbol:   class UpdateEngine
  location: class MainActivity
2 errors
ninja: build stopped: subcommand failed.
09:41:17 ninja failed with: exit status 1

查度娘,说是  删除Android.mk中的LOCAL_SDK_VERSION := current

 

这样弄后报错:

vendor/nxp-opensource/fsl_imx_demo/NaLongUpgrade/Android.mk: error: NaLongUpgrade: Must specify LOCAL_SDK_VERSION or LOCAL_PRIVATE_PLATFORM_APIS, 
build/make/core/sdk_check.mk:21: error: done.
09:49:19 ckati failed with: exit status 1

#### failed to build some targets (21 seconds) ####

对比源码里面另一个app工程的mk文件,发现将 LOCAL_SDK_VERSION 更改为 LOCAL_PRIVATE_PLATFORM_APIS :

# LOCAL_SDK_VERSION := current
LOCAL_PRIVATE_PLATFORM_APIS := current

 编译通过

 

参考:

https://blog.youkuaiyun.com/jsonz/article/details/41117593

Line 4: error: class RandomizedSet is already defined in package unnamed package [in RandomizedSet.java] public class RandomizedSet{ ^ Line 6: error: cannot find symbol [in RandomizedSet.java] private Link<Integer>values; ^ symbol: class Link location: class RandomizedSet.RandomizedSet Line 10: error: cannot find symbol [in RandomizedSet.java] valToIndex = new HashMap<>(); ^ symbol: variable valToIndex location: class RandomizedSet Line 11: error: cannot find symbol [in RandomizedSet.java] values = new ArrayLink<>(); ^ symbol: variable values location: class RandomizedSet Line 11: error: cannot find symbol [in RandomizedSet.java] values = new ArrayLink<>(); ^ symbol: class ArrayLink location: class RandomizedSet Line 12: error: cannot find symbol [in RandomizedSet.java] rand = new Random(); ^ symbol: variable rand location: class RandomizedSet Line 16: error: cannot find symbol [in RandomizedSet.java] if(valToIndex.containsKey(val)){ ^ symbol: variable valToIndex location: class RandomizedSet Line 19: error: cannot find symbol [in RandomizedSet.java] valToIndex.put(val,values.size()); ^ symbol: variable valToIndex location: class RandomizedSet Line 19: error: cannot find symbol [in RandomizedSet.java] valToIndex.put(val,values.size()); ^ symbol: variable values location: class RandomizedSet Line 20: error: cannot find symbol [in RandomizedSet.java] values.add(val); ^ symbol: variable values location: class RandomizedSet Line 21: error: cannot find symbol [in RandomizedSet.java] rerurn ture; ^ symbol: class rerurn location: class RandomizedSet Line 25: error: cannot find symbol [in RandomizedSet.java] if(!valToIndex.containsKey(val)){ ^ symbol: variable valToIndex location: class RandomizedSet Line 28: error: cannot find symbol [in RandomizedSet.java] int index = valToIndex.get(val); ^ symbol: variable valToIndex location: class RandomizedSet Line 29: error: cannot find symbol [in RandomizedSet.java] int lastVal = values.get(values.size() - 1); ^ symbol: variable values location: class RandomizedSet Line 29: error: cannot find symbol [in RandomizedSet.java] int lastVal = values.get(values.size() - 1); ^ symbol: variable values location: class RandomizedSet Line 30: error: package values does not exist [in RandomizedSet.java] values.get.set(index,lastVal); ^ Line 31: error: cannot find symbol [in RandomizedSet.java] valToIndex.put(lastVal,index); ^ symbol: variable valToIndex location: class RandomizedSet Line 32: error: cannot find symbol [in RandomizedSet.java] values.remove(values.size() - 1); ^ symbol: variable values location: class RandomizedSet Line 32: error: cannot find symbol [in RandomizedSet.java] values.remove(values.size() - 1); ^ symbol: variable values location: class RandomizedSet Line 33: error: cannot find symbol [in RandomizedSet.java] valToIndex.remove(val); ^ symbol: variable valToIndex location: class RandomizedSet Line 37: error: cannot find symbol [in RandomizedSet.java] return values.get(rand.nextInt(values.size())); ^ symbol: variable values location: class RandomizedSet Line 37: error: cannot find symbol [in RandomizedSet.java] return values.get(rand.nextInt(values.size())); ^ symbol: variable rand location: class RandomizedSet Line 37: error: cannot find symbol [in RandomizedSet.java] return values.get(rand.nextInt(values.size())); ^ symbol: variable values location: class RandomizedSet 23 errors
08-09
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值