我正在尝试为我的Nexus One进行内核调试,并且已经按照http://bootloader.wikidot.com/android:kgdb的说明进行操作.我想知道是否有人真的让这个工作?有没有人为使用KGDB调试内核做了更新的解决方案?
在device/sample文件夹中的android源代码中有一个名为的文件夹overlays.你会在例如cyanogen mods中看到相同的叠加文件夹.
什么是叠加文件夹?它是如何工作的?它是干什么用的?我在哪里可以阅读更多相关信息?
提前致谢
有没有人知道如何在从源代码(AOSP)构建android时包含超级用户权限?
我想我非常认真地遵循这个网站的指示
http://source.android.com/source/downloading.html
但是当我试试这个
repo init -u https://android.googlesource.com/platform/manifest
Run Code Online (Sandbox Code Playgroud)
我收到以下错误.
repo init -u https://android.googlesource.com/platform/manifest -b froyo
/root/bin/repo: line 1: syntax error near unexpected token `newline'
/root/bin/repo: line 1: `<?xml version="1.0" encoding="utf-8"?>'enter code here`
Run Code Online (Sandbox Code Playgroud)
我试了好几次,但从一开始就没有运气.发生了什么?
我正在研究AOSP.我已经成功添加了我的apk来构建.现在我想给我的应用程序root权限.我不想提供对其他应用程序的root访问权限或在我的构建中安装超级用户应用程序.我只是想添加我的应用程序以获得root访问权限.我怎样才能做到这一点?
我浏览了path system/extras/su中的su.c文件但是我无法理解整个代码.
当我查看代码时,我认为如果我可以modify su.c来提供对我的应用程序的root访问权限,那么我的目标就可以实现compile it and add the binary.我对吗?
Google 在这里有一个适用于所有AOSP应用的网站,其中包括其启动器,联系人等...
我想知道如何导入这些应用程序.更具体地说,发射器和联系人应用程序(虽然我也想了解其他人).
事情是,它并不那么简单.你不能只导入克隆的项目,就是这样.即使您使用Eclipse(这似乎是这些存储库中使用的官方工具,根据文件夹hirerchy),它也不会那么容易.
我发现了一篇关于如何导入启动器(版本4.4.x)的旧文章,但它使用的是Eclipse,我认为需要Linux来构建一些文件.
我试图使用Eclipse导入,但由于某种原因,我无法使用工作的"protobuf"库.我试过从这里使用一个jar ,但它没有成功导入它.
还有一个不错的第三方库,它有一个导入版本的启动器应用程序,但目前它有点落后,因为它基于Kitkat(4.4)而不是Lollipop(5.0).
你如何进口这些项目?有一个简单的方法吗?它甚至可以在Windows操作系统和Android Studio上运行吗?
我试图在具有双Sim(两者都有效)的Android 5.1设备中获取MCC和MNC号码(基本上我想要IMSI号码但这些也足够了).由于5.1支持双Sim,所以我使用了这样的Subscription管理器:
SubscriptionManager manager = SubscriptionManager.from(this);
List<SubscriptionInfo> sil = manager.getActiveSubscriptionInfoList();
if (sil != null) {
for (SubscriptionInfo subInfo : sil) {
Log.v("TestMain", "SubInfo:" + subInfo);
}
} else {
Log.v("TestMain", "SubInfo: list is null");
}
Run Code Online (Sandbox Code Playgroud)
得到了这个输出:
07-24 18:28:32.162 3844-3844/? V/TestMain? SubInfo:{id=1, mcc 405 mnc 803, iccId=89918030914128062059 simSlotIndex=0 displayName=Aircel Karnataka carrierName=Aircel — Aircel Karnataka nameSource=0}
07-24 18:28:32.162 3844-3844/? V/TestMain? SubInfo:{id=2, mcc 405 mnc 803, iccId=8991860044481968955 simSlotIndex=1 displayName=CARD 2 carrierName=Vodafone Karnataka nameSource=0}
Run Code Online (Sandbox Code Playgroud)
MCC(将与同一个国家/地区相同)注意到虽然运营商不同,但MNC是相同的.
当我关掉手机时,我在logcat中看到了这一行:
07-24 18:31:02.295 616-616/? V/KeyguardUpdateMonitor? SubInfo:{id=1, mcc 405 mnc …Run Code Online (Sandbox Code Playgroud) android android-source telephonymanager dual-sim android-5.1.1-lollipop
更新:在带有Android Oreo(8.X)的模拟器上工作。我有可能直接对android源进行更改,因此,如果有人知道我必须更改或更新以使其正常工作的android源中的内容,这也将有所帮助(因此,我实际上并不需要Android 7解决方法(尽管无法进行Android 8更新)。
我在FrameLayout中有一个SurfaceView。SurfaceView通常会显示视频,例如,我实际上是在绘制图像。问题是,如果我将FrameLayout(或SurfaceView)的尺寸设置为宽度大于10.000像素,则会在左侧裁剪。
在Android 7.1.1上进行了测试(在设备和仿真器上:Android TV(1080p)API 25
public class TestActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//add surfaceview
TestSurfaceView testSurfaceView = new TestSurfaceView(this);
setContentView(testSurfaceView);
//resize
FrameLayout.LayoutParams bgParams = (FrameLayout.LayoutParams) testSurfaceView.getLayoutParams();
//testcase full hd - working
bgParams.width = 1920;
//testcase 2 - working - each segment is 330px as 9900 / 1920 * 64 (default segment width) == 330
//bgParams.width = 9900;
//testcase 3 - working
//bgParams.width = 10000;
//testcase 4 - not working - …Run Code Online (Sandbox Code Playgroud) android surfaceview android-source android-x86 android-7.0-nougat
我曾尝试 repo init 源代码 Ubuntu 构建机器,它能够成功克隆代码。
回购初始化 -u git@github.com:xxx/xx_manifest.git -b xxx
现在我正在尝试 repo init VM Ubuntu 机器中的源代码。
在得到如下错误之间:
Traceback (most recent call last):
File "/xxx/.repo/repo/main.py", line 56, in <module>
from subcmds.version import Version
File "/xxx/.repo/repo/subcmds/__init__.py", line 38, in <module>
['%s' % name])
File "/xxx/.repo/repo/subcmds/upload.py", line 27, in <module>
from hooks import RepoHook
File "/xxx/.repo/repo/hooks.py", line 472
file=sys.stderr)
^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
python 版本在构建机器和 vm 机器 2.7.17 中是相同的。
我在尝试访问以下代码时收到 SecurityException 和 RemoteException。应用程序接口
val networkCapabilities =connectivityManager.getNetworkCapabilities(connectivityManager.activeNetwork)
异常获取
Fatal Exception: java.lang.SecurityException: Package android does not belong to 10319
at android.os.Parcel.createExceptionOrNull(Parcel.java:2385)
at android.os.Parcel.createException(Parcel.java:2369)
at android.os.Parcel.readException(Parcel.java:2352)
at android.os.Parcel.readException(Parcel.java:2294)
at android.net.IConnectivityManager$Stub$Proxy.getNetworkCapabilities(IConnectivityManager.java:3347)
at android.net.ConnectivityManager.getNetworkCapabilities(ConnectivityManager.java:1549)
Caused by android.os.RemoteException: Remote stack trace:
at android.app.AppOpsManager.checkPackage(AppOpsManager.java:7783)
at com.android.server.ConnectivityService.getNetworkCapabilities(ConnectivityService.java:2297)
at android.net.IConnectivityManager$Stub.onTransact(IConnectivityManager.java:1357)
at android.os.Binder.execTransactInternal(Binder.java:1195)
at android.os.Binder.execTransact(Binder.java:1159)
Run Code Online (Sandbox Code Playgroud)
我分析它,当我深入到AOSP代码,我得到的流量将会checkPackage从AppOpsManager类随附的屏幕截图,并从我们所知道的代码所示的方法,只要检查包的条件不等于MODE_ALLOWED那么只有我们将得到安全例外。但我没有。想法何时该条件会失败。
如果有人对此有任何想法,请帮助我,谢谢
android exception android-source android-app-ops android-connectivitymanager
android-source ×10
android ×9
root ×2
android-connectivitymanager ×1
android-x86 ×1
c ×1
debugging ×1
dual-sim ×1
eclipse ×1
exception ×1
git ×1
github ×1
kernel ×1
kgdb ×1
linux-kernel ×1
overlay ×1
python ×1
repo ×1
repository ×1
surfaceview ×1
ubuntu ×1