2012-04-28 2 views
0

내 위젯이 사용자에 의해 설치되었는지 여부에 관계없이 사용자가 내 위젯을 설치했는지 여부를 알기 위해 어떤 방법을 사용했는지 알고 싶습니다.이를 수행 할 특정 또는 문서화 된 방법이 없음을 알고 있습니다.위젯이 설치되어 있는지 확인 하시겠습니까?

의견이 있으십니까?

감사

사용자가 내 위젯을 설치할 때, 나는 (의 OnUpdate 등) 애드 마스터에게 통지 할 몇 가지 코드 또는를 얻는 경우에

, 내 공유의 환경 설정에서 그 저장할 수 있습니다.

이 코드 또는 방법을 알고 계십니까?

+0

위젯이 인터넷에 처음 연결할 때 온라인 서비스에 매개 변수를 보내는 것일까 요? – sandalone

답변

-1

당신은 설치된 모든 응용 프로그램 widgets.as의 목록을 얻기를 위해 getInstalledProviders를 사용할 수 있습니다

AppWidgetManager mAppWidgetManager= AppWidgetManager.getInstance(context); 
List<AppWidgetProviderInfo> installed = mAppWidgetManager.getInstalledProviders(); 
//YOUR APP WIDGET INFO HERE 
AppWidgetProviderInfo appWidgetInfo = mAppWidgetManager.getAppWidgetInfo(appWidgetId); 
+0

위젯의 전체 목록이 설치 여부에 관계없이 표시됩니다. –

+0

확인 위젯의 전체 목록을 얻었으며 설치되어있는 경우 앱 위젯을 검색합니다. –

+0

사용자가 화면에 내 위젯이 있는지 알고 싶습니다 ... –

4
ComponentName thisWidget = new ComponentName(getApplicationContext(), MyWidgetProvider.class); 
int[] allWidgetIds2 = appWidgetManager.getAppWidgetIds(thisWidget); 

allWidgetIds2 배열이 홈 화면에 추가 된 질문에 위젯의 인스턴스를 포함

+0

이것은 나를 위해 일했으며 승인 된 대답이어야합니다. – TWilly

관련 문제