2011-09-21 3 views
0

좋아요, 나는 오늘 많이 물어 보는 것 같지만 문서를 읽은 후에이 부분을 잘 모르겠습니다. 아니면 그냥 잘못하고있는 것일 수도 있습니다.Android 위젯 공급자 및 주요 응용 프로그램 질문

나는 사용자가 의미 응용 프로그램 자체에서 위젯을 만들 수있는 응용하고 있어요 :

1) 나는 메뉴 화면에서 내 응용 프로그램을 클릭

2) 앱 장화 , 사용자가 세부 사항을 채우고까지

3) 사용자 안타 버튼

4) 데이터가 파일에 저장됩니다, 아마 XML

4) 응용 프로그램을 만듭니다 닫으면 위젯은 2x2 크기로 장치의 화면에 심어집니다.

그러나 다양한 튜토리얼과 설명서를 통해 Android를 읽었을 때 위젯 공급자와 애플리케이션이 서로 다른 두 엔티티 인 것처럼 보이며 병합 될 수있는 것처럼 보이지 않습니다 (의미있는 데이터는 전송할 수 없음) .

원래 아이디어를 사용하여 응용 프로그램을 만들 수 있습니까? 아니면 전체 내용을 크게 변경해야합니까?

미리 감사드립니다.

+0

정확히 무엇을하려합니까? –

+0

사용자가 채운 데이터를 저장하는 동안 메인 스크린에 위젯을 생성하는 응용 프로그램을 만들려고하므로 응용 프로그램을 통해 데이터에 다시 액세스 할 수 있습니다. –

+0

설명이 꽤 모호하지만, 알고 싶은 것은 안드로이드 응용 프로그램이 버튼을 눌러 위젯을 즉시 만들 수 있는지 또는 사용자가 add> widgets> widgetname 부분에서 수동으로 추가해야하는지 여부입니다. –

답변

1

앱을 하나의 APK에있는 위젯과 결합 할 수 있습니다. 그것은 전혀 문제가되지 않습니다. 또한 다양한 방법 (공유 환경 설정, 파일, SQLite 등)으로 데이터를 공유 할 수 있습니다. 문제는 앱을 통해 위젯을 배치 할 수 있다는 아이디어부터 시작합니다. 위젯은 사용자가 배치해야하며 위젯 메뉴에서 위젯을 선택하고 원하는 위 치에 배치해야합니다. 귀하의 모든 개념은 여전히 ​​수행 할 수 있으며 꽤 자주 - ConfigurationActivity을 사용합니다.

이것은 사용자가 위젯을 선택할 때 호출되는 일반적인 활동입니다. 사용자가 데이터 입력, 환경 설정 선택 등을 요구하는 것을 포함하여 원하는대로 사용자 정의 할 수 있습니다. 그런 다음, 위젯 갱신 메소드에서 해당 활동의 스펙을 사용하여 위젯을 빌드 할 수 있습니다. 그것은 사용자에 의해 배치되고, 그것입니다.

+0

귀하의 명확하고 간결한 설명에 감사드립니다. 그건 내 응용 프로그램을 여전히 할 수 있다는 것을 아는 것입니다! –

0

wigdet은 그 응용 분야 중 일부입니다.

사용자는 위젯에서 정보를 입력 할 수 있으며 정보를 저장하고 공유하는 다른 방법을 사용할 수 있습니다. SharedPreference, SQLITE (권장) 등.

이 중 하나를 사용하여 사용자가 위젯과 기본 acitivty간에 입력하는 데이터를 교환 할 수 있습니다.

편집 :

는 버튼 클릭 대신 원래의 방법으로 위젯을 추가 할 수 있습니다. Android OS를 살펴보고 해당 OS에서 위젯을 추가하는 방법을 알아야 할 수 있습니다. 그리고 아마도 이것을 할 일종의 방법을 만들 수도 있습니다.

나는 이것을 할 수있는 클래스라고 생각하지 않는다. 나는 안드로이드 OS가 홈 화면에이 긴 방법으로 만 포장되어 있다고 믿는다.

+0

예. 전체 애플리케이션과 위젯 생성을 함께 결합하기 위해 안드로이드 라이브러리의 레이어를 편집 할 수있을 것 같지 않습니다. 게다가 앱 스토어에 제출하면 승인되지 않습니다. –

+0

이것은 작업의 양, 안정성 및 "해킹"요소를 고려한 솔루션이 아닐 수도 있습니다. 하지만 안드로이드 마켓에 안드로이드 마켓팅 승인 프로세스가 없다는 것을 명심하십시오. –

+1

@alextsc EXACTLY! 롤 ..하지만 여전히 좋은 연습을하지 않을 것입니다. android OS 자체와 다른 문제 및 혼란을 야기 할 수 있습니다. 그래서 나는 내 대답에 언급했다. 안드로이드 –