기본적으로 관련 앱 제품군을 업데이트하고 시작하기위한 맞춤 앱 스토어 인 앱을 구현했습니다. 그것은 또한 작동하는 자체를 업데이트해야하지만, 설치 프로세스 중에 경고없이 앱이 종료됩니다. 이 경우 앱을 자동으로 다시 시작하여 사용자가 업데이트 후 바로 사용할 수 있도록하고 싶습니다.외부 브로드 캐스트 수신기를 통해 앱 다시 시작
그래서 첫 번째 앱의 패키지 이름에 대한 패키지 이벤트를 수신하고 새로운 활동을 시작하는 단일 브로드 캐스트 수신기 만 포함하여 별도의 애플리케이션을 만들었습니다. 난 단지 수신기를 사용하여 응용 프로그램이 지금 실행 여부에 직접적으로 모순 된 정보를 본 비슷한 구현 검색에서
<application android:icon="@drawable/ic_launcher"
android:label="@string/app_name">
<receiver android:name=".AppUpdateReceiver">
<intent-filter>
<action android:name="android.intent.action.PACKAGE_REPLACED"/>
<action android:name="android.intent.action.PACKAGE_ADDED"/>
<action android:name="android.intent.action.PACKAGE_INSTALL"/>
<data android:scheme="package" />
</intent-filter>
</receiver>
및 수신기는 경우 호출 여부 : 그 수신기는 호출되지 않습니다 해당 앱이 이미 실행되고 있지 않습니다. 나는 심지어 내 자신과 매우 비슷한 매니페스트와 함께 수신기 만 포함하는 응용 프로그램의 example code을 보았습니다. 그렇다면 다른 패키지가 설치 될 때마다 수신자가 호출되도록하려면이 애플리케이션에서 무엇이 필요합니까?
더 좋은 해결책이 있다면 나는 그것을 듣게되어 기쁩니다.
나는 그것을 시도했다. 그리고 내가 그 응용 프로그램에서 처음으로 활동을 시작했다면 작동하지만, 실제로 달성하려고 노력하는 것을 돕지는 못한다. 서비스와 비슷한 것을 할 수 있었고, 어떻게 든 업데이트 응용 프로그램에서 서비스를 시작할 수 있습니까? –
보이지 않는 액티비티를 사용하여 관련 솔루션을 찾았으므로 http://stackoverflow.com/questions/4467600/how-to-launch-a-android-service-when-the-app-launches –
그렇게하는 방법이지만 사용자 경험을 통해 무언가가 일어나고 있음을 알리는 것이 우수 사례입니다. 보이지 않는 '활동'은 기본적으로 반대하며, 최소한 피드백의 형태를 제공해야합니다. – Squonk