Android APN에 대한 권한이 없습니다.
2599 단어 안드로이드 개발
Google은 보안을 바탕으로 제3자 응용 프로그램이 APN에 대한 접근 권한을 차단했기 때문에 인터넷에서 프로그램을 시스템 app로 설정하면 된다고 주장하는 사람이 있다.adb push 명령을 통해 apk를/system/app/디렉터리에 두는 것은 확실히 가능하지만 대부분의 app는 제3자 응용 프로그램으로서 이러한 타당성은 크지 않다.따라서 시스템 서명을 이용하여 app에 APN 접근 권한을 부여합니다.
첫 번째 방법은 간단하지만 안드로이드 시스템 원본 환경에서 make로 컴파일해야 합니다.
1. AndroidManifest.xml manifest android:sharedUserId="android.uid.system" 。
2. Android.mk , LOCAL_CERTIFICATE := platform
3. mm , apk 。
두 번째 방법은 좀 번거롭지만 가상 컴퓨터를 켜지 않고 원본 코드 환경에서make로 컴파일할 필요가 없다.
4
4
4
4
도구 및 키 다운로드 주소:http://download.csdn.net/detail/bulkin/4329253
이렇게 마지막에 얻은 apk는 첫 번째 방법과 같다.마지막으로 원리를 설명하자면 먼저android:sharedUserId="android를 넣습니다.uid.시스템Shared User id를 사용하면 동일한 User id를 가진 여러 APK를 같은 프로세스에서 실행하도록 구성할 수 있습니다.그럼 프로그램의 UID를 android로 맞추세요.uid.시스템, 즉 프로그램을 시스템 프로세스에서 실행하도록 해야 한다. 그러면 시스템 시간을 수정할 수 있는 권한이 있다.
다만 UID를 추가하는 것이 부족합니다. 이때 APK를 설치하면 설치할 수 없습니다. 알림 서명이 일치하지 않습니다. 프로그램이 시스템 프로세스에서 실행하려면 목표 시스템의platform이 있어야 하기 때문입니다.키, 바로 위 두 번째 방법에서 언급한platform입니다.Pk8과platform.x509.pem 파일 두 개.이 두 키로 서명해야 apk가 시스템 프로세스에 들어갈 수 있습니다.첫 번째 방법에서 LOCALCERTIFICATE: =platform은 사실 이 두 키로 서명하는 것입니다.
이것도 문제가 하나 있다. 바로 이렇게 생성된 프로그램은 원시적인 안드로이드 시스템이나 자신이 컴파일한 시스템에서만 사용할 수 있다. 왜냐하면 이런 시스템이platform을 얻을 수 있기 때문이다.Pk8과platform.x509.pem 파일 두 개.다른 회사에서 만든 안드로이드에 설치도 못하고Android의 원래 키에 서명해 보십시오. 프로그램은 시뮬레이터에서 OK를 실행하지만 G3에 직접 프롬프트를 설치합니다."Package...has no signatures that match those in shared user android.uid.시스템", 이것도 시스템의 안전을 보호한다.
마지막으로 말하자면 이android:sharedUserId 속성은 apk를 시스템 프로세스에 넣을 수 있을 뿐만 아니라 여러 개의 APK를 한 프로세스에서 실행할 수 있도록 설정할 수 있다. 이렇게 하면 데이터를 공유할 수 있어 매우 유용할 것이다.ref:http://blog.csdn.net/bulkin/article/details/7601609
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[Android] 둥글게 펼쳐지는 Ripple을, 바삭하게 구현간이적으로 터치 피드백이 없는 버튼이나 레이아웃, 탭 범위가 좁아져 버린 버튼 등에, 범위 밖으로 둥글게 퍼지는 Ripple로 탭감, 영역을 조금 늘립니다. 이런 느낌 (화질 나쁘고 미안해..) Ripple을 내고 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.