我正在尝试显示从开放天气图api中提取的Json数据,并在应用程序的logcat.After成功构建和安装中找到它。
public class MainActivity extends AppCompatActivity {
EditText mEditText;
TextView mTextView;
String api="http://api.openweathermap.org/data/2.5/weather?
q=kolkata&appid=e8cd0e5f8d3ba1e87d108da87d9c0a94";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
DownloadTask task=new DownloadTask();
task.execute(api);
}
public class DownloadTask extends AsyncTask<String,Void,String>
{
@Override
protected String doInBackground(String... urls) {
String result="";
URL url;
HttpURLConnection urlConnection=null;
try {
url=new URL(urls[0]);
urlConnection=(HttpURLConnection)url.openConnection();
InputStream in=urlConnection.getInputStream();
InputStreamReader reader=new InputStreamReader(in);
int data=reader.read();
while (data!=-1)
{
char current=(char)data;
result+=current;
data=reader.read();
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return result;
}
@Override
protected void onPostExecute(String result) {
super.onPostExecute(result);
Log.i("Result",result);
}
}
}
发布于 2020-08-05 05:48:18
如截图所示:
错误前日志
Access denied finding property "persist.vendor.log.tel_dbg"
还有一个警告:
type=1400 audit(xxx): avc: denied { read } for xxx
这是导致上述错误Access denied finding property
的原因。
显示Access denied finding property
的根本原因的示例
我计算出了类似的错误:
com.gsma.rcs W/com.gsma.rcs: type=1400 audit(0.0:526384): avc: denied { read } for name="u:object_r:vendor_displayfeature_prop:s0" dev="tmpfs" ino=16384 scontext=u:r:untrusted_app_25:s0:c512,c768 tcontext=u:object_r:vendor_displayfeature_prop:s0 tclass=file permissive=0
查证:
Action
:readActor
=scontext
=source context
:untrusted_app_25Object
=tcontext
=target context
:vendor_displayfeature_prop ro.vendor.df.effect.conflict
object_r
=object read
?Result
=tclass
=target class
:filepermissive
=permissive mode
: - during Android device booting, you can use kernel parameter to config mode:
- `androidboot.selinux=permissive`
- or
- `androidboot.selinux=enforcing`
翻译成人类可读的单词:
untrusted_app_25想要读取的vendor_displayfeature_prop,是文件类型的,但是由于不是许可模式,Android被拒绝(根据OEM内置的SELinux配置)
这将导致以下输出错误日志:
com.gsma.rcs E/libc: Access denied finding property "ro.vendor.df.effect.conflict"
如何修复avc: denied
错误?
请参考官方医生:
使用audit2allow
也许可以修复它。
https://stackoverflow.com/questions/59533551
复制相似问题