-
HINTERGRUND DER ERFINDUNG
-
Gebiet der Erfindung
-
Die vorliegende Erfindung betrifft eine Informationsverarbeitungsvorrichtung, ein Speichermedium und ein Steuerungsverfahren.
-
Beschreibung des Standes der Technik
-
In den letzten Jahren haben viele Unternehmen eigene Produkte mit Open-Source-Software (OSS) entwickelt. Die Verwendung von OSS hat Vorteile wie Entwicklungskostenreduzierung und Anwendung modernster Technologie. Die
japanische Patentanmeldung Nr. 2016-157282 beschreibt ein Verfahren zur kontinuierlichen Erfüllung von Verpflichtungen, die in einer OSS-Lizenz enthalten sind. Softwareanwendungen, die eine OSS verwenden, sind verpflichtet, den Text der Lizenz (im Folgenden Lizenzinformation genannt) für eine Vielzahl von verwendeten OSS anzuzeigen. Solche Softwareanwendungen müssen auch den Inhalt einer Vereinbarung zwischen einem Softwareentwickler und einem Käufer, die sogenannte Endnutzerlizenzvereinbarung (EULA), darstellen. So sind viele Anwendungen (im Folgenden kurz Apps) so konfiguriert, dass sie die Lizenzinformation und die EULA im Menü oder einem Hilfe-Bildschirm bereitstellen.
-
Zum Beispiel wird OSS weithin für die Entwicklung von mobilen Anwendungen (im Folgenden kurz Mobil-Anwendung) verwendet, die in einem mobilen Endgerät zur Erweiterung der Funktionen des mobilen Endgeräts installiert werden sollen. Nachdem sie in einem mobilen Endgerät installiert wurden, dienen einige Mobil-Anwendungen als „Nativ-Anwendungen“, die ohne Zugriff auf einen Webserver arbeiten, und andere greifen auf einen Webserver zu, um „Web-Anwendungen“ auf dem Webserver auszuführen. Im Allgemeinen speichern Nativ-Anwendungen Lizenzinformation darin, und Web-Anwendungen speichern Lizenzinformation in einem Webserver.
-
In den letzten Jahren haben Hybrid-Mobil-Anwendungen (nachfolgend kurz Hybrid-Anwendungen), die sowohl als Nativ-Anwendung als auch als Web-Anwendung dienen, eine weite Verbreitung erreicht. Grundsätzlich arbeiten Hybrid-Anwendungen normalerweise, wenn sie mit einem Server kommunizieren können, der Ressourcen bereitstellt, aber einige Hybrid-Anwendungen können einige der Funktionen auch in einem nichtkommunizierbaren Zustand ausführen.
-
Nimmt man OSS als Beispiel, muss die Hybrid-Anwendung es ermöglichen, sowohl die Lizenzinformation über OSS, die in der Nativ-Anwendung verwendet wird, als auch die Lizenzinformation über OSS, die in der Web-Anwendung verwendet wird, anzuzeigen. Wenn die beiden Teile der Lizenzinformation in der Hybrid-Anwendung wie bei den herkömmlichen Nativ-Anwendungen gespeichert werden, ist es notwendig, die Mobil-Anwendung im mobilen Endgerät zu aktualisieren, um die Lizenzinformation nicht nur im Falle einer Änderung des OSS, das in der Nativ-Anwendung verwendet wird, zu aktualisieren, sondern auch im Falle einer Änderung des OSS, das in der Web-Anwendung verwendet wird. Das heißt, die Häufigkeit, mit der die Mobil-Anwendung aktualisiert werden muss, nimmt zu, was die Entwicklungslast auf die Anwendungsanbieter legt und den Benutzern Unannehmlichkeiten bereitet. Andererseits, wenn beide Teile der Lizenzinformation im Webserver wie bei den herkömmlichen Web-Anwendungen gespeichert werden, ist es notwendig, beide Teile der Lizenzinformation vom Server jedes Mal zu erfassen, wenn die Lizenzinformation angezeigt werden soll. Dies erhöht das Kommunikationsvolumen, was zu einer Reduzierung der Geschwindigkeit von Antworten auf Benutzeroperationen führen kann.
-
Somit befasst sich die vorliegende Erfindung damit, ein Verfahren zum geeigneten Anzeigen von Information über eine Nativ-Anwendung und Information über eine Web-Anwendung bereitzustellen, ohne die Benutzerfreundlichkeit zu beeinträchtigen.
-
HINTERGRUND DER ERFINDUNG
-
Gemäß einem Aspekt der vorliegenden Erfindung umfasst ein Verfahren für eine Informationsverarbeitungsvorrichtung, in der eine Hybrid-Anwendung mit sowohl einer Nativ-Anwendung als auch einer Web-Anwendung arbeitet und die mit einem Server kommunizierbar ist, das Verfahren, bei Annahme einer vorbestimmten Benutzeroperation, ein Übertragen einer Erfassungsanfrage für Information über die Web-Anwendung an den Server, ein Lesen von Information über die Nativ-Anwendung, die vorab in der Hybrid-Anwendung gespeichert wurde, und ein Anzeigen von Information, die ansprechend auf die Erfassungsanfrage und die gelesene Information als ein Ergebnis der vorbestimmten Benutzeroperation erzeugt wurde, umfasst.
-
Weitere Merkmale der vorliegenden Erfindung ergeben sich aus der folgenden Beschreibung der beispielhaften Ausführungsformen unter Bezugnahme auf die Zeichnungen.
-
Figurenliste
-
- 1 ist eine Gesamtansicht eines Systems.
- 2 ist ein Hardware-Blockdiagramm eines mobilen Endgeräts.
- 3 ist ein Hardware-Blockdiagramm eines Servers.
- 4 ist ein Software-Blockdiagramm des gesamten Systems.
- 5 ist ein Diagramm, das einen Online-Bildschirmübergang einer Mobil-Anwendung darstellt.
- 6 ist ein Diagramm, das einen Offline-Bildschirmübergang der Mobil-Anwendung darstellt.
- 7 ist ein Flussdiagramm eines Lizenzanzeigeprozesses in der Mobil-Anwendung.
- 8 ist ein Flussdiagramm eines Aktualisierungsprozesses in der Mobil-Anwendung.
- 9 ist ein Flussdiagramm eines Hintergrundprozesses in der Mobil-Anwendung.
-
BESCHREIBUNG DER AUSFÜHRUNGSFORM
-
Ausführungsbeispiele zum Durchführen der vorliegenden Erfindung werden im Folgenden anhand der Zeichnungen beschrieben. Es wird darauf hingewiesen, dass die nachfolgend beschriebenen Ausführungsbeispiele die Erfindung im Rahmen der Ansprüche nicht beschränken und dass alle im Zusammenhang mit den Ausführungsbeispielen beschriebenen Merkmalskombinationen nicht notwendigerweise zwingend für die Lösungen vorliegender Erfindung wesentlich sind.
-
[Systemkonfiguration]
-
1 ist ein Diagramm, das eine Gesamtkonfiguration eines Systems gemäß einem ersten Ausführungsbeispiel veranschaulicht. Ein Informationsverarbeitungssystem beinhaltet ein mobiles Endgerät 110 und einen Server 120. Das mobile Endgerät 110 ist kommunizierbar mit dem Server 120 verbunden, der verschiedene Dienste im Internet über ein lokales Netzwerk (LAN) wie etwa Wi-Fi® oder ein Weitverkehrsnetz (WAN) bereitstellt.
-
Das mobile Endgerät 110, das beispielsweise ein Smartphone oder Tablet sein kann, weist mehrere Funktionen wie etwa Telefon, Mailer, Webbrowser und Kamera auf. Das mobile Endgerät 110 ist ein Beispiel für eine Informationsverarbeitungsvorrichtung, die ein Personal Computer (PC) oder dergleichen sein kann. Der Server 120 ist ein Beispiel für einen Server, der eine Funktion zum Speichern von Dateien in verschiedenen Formaten wie etwa Hyper Text Markup Language (HTML) zum Beschreiben von Webseiten, JavaScript®, Bild und Text aufweist. Der Server 120 stellt Webseiten und verschiedene Arten von Information als Antwort auf Anfragen von externen Endgeräten wie dem mobilen Endgerät 110 bereit.
-
Das Informationsverarbeitungssystem im dargestellten Ausführungsbeispiel ist aus dem mobilen Endgerät 110 und dem Server 120 gebildet, jedoch ist das Informationsverarbeitungssystem nicht auf diese Struktur beschränkt.
-
[Hardwarekonfiguration des mobilen Endgeräts]
-
2 ist ein Hardware-Blockdiagramm des mobilen Endgeräts 110. Das mobile Endgerät 110 umfasst eine Steuereinheit 210 und eine Anzeige- und Bedieneinheit 220. Die Steuereinheit 210 umfasst eine zentrale Recheneinheit (CPU) 211, einen Nur-Lese-Speicher (ROM) 212, einen Direktzugriffsspeicher (RAM) 213, einen Solid-State-Drive (SSD) 214, eine Anzeige- und Bedieneinheit-Schnittstelle (I/F) 215 und ein im Folgenden beschriebenes Netzwerk I/F 216 zur Steuerung des Betriebs des gesamten mobilen Endgeräts 110. Die CPU 211 liest im ROM 212 gespeicherte Steuerprogramme oder dergleichen zum Ausführen und Steuern verschiedener Funktionen des mobilen Endgeräts 110 wie Kamera und Kommunikation. Der RAM 213 wird als ein temporärer Speicherbereich wie der Hauptspeicher oder Arbeitsbereich für die CPU 211 verwendet. Im dargestellten Ausführungsbeispiel verwendet eine CPU 211 einen Speicher (den RAM 213 oder die SSD 214) zum Ausführen von Prozessen, die im Folgenden mit Bezug auf die Flussdiagramme beschrieben werden, jedoch ist die dargestellte Erfindung nicht darauf beschränkt. Zum Beispiel können eine Vielzahl von CPUs und eine Vielzahl von RAMs oder SSDs zum Ausführen der Prozesse zusammenwirken. Die SSD 214 ist eine Speichereinheit mit großer Kapazität, die HTML-Dateien, Java Script®-Dateien, Bilddaten, Textdaten, verschiedene Programme und dergleichen speichert. Die Anzeige- und Bedieneinheit I/F 215 ist eine Schnittstelle zum Verbinden der Anzeige- und Bedieneinheit 220 und der Steuereinheit 210. Die Anzeige- und Bedieneinheit 220 umfasst eine Touch-Panel-Anzeige und Hardware-Tasten zum Annehmen von Operationen, Eingaben und Anweisungen vom Benutzer oder von Ausgabebildschirmen, die dem Benutzer dargestellt werden sollen. Das Netzwerk I/F 216 ist eine Schnittstelle zum Verbinden der Steuereinheit 210 (des mobilen Endgeräts 110) mit einem Netzwerk wie einem drahtlosen LAN oder WAN. Das mobile Endgerät 110 verwendet das Netzwerk I/F 216 zum Übertragen oder Empfangen verschiedener Arten von Information wie Bildern und Texten an oder von Diensten im Internet.
-
[Hardwarekonfiguration des Servers]
-
3 ist ein Hardware-Blockdiagramm des Servers 120.
-
Der Server 120 umfasst eine CPU 311, einen ROM 312, einen RAM 313, ein Festplattenlaufwerk (HDD) 314 und ein Netzwerk I/F 315. Die CPU 311 liest Steuerprogramme, die im ROM 312 gespeichert sind, und führt verschiedene Prozesse zum Steuern der gesamten Operationen aus. Der RAM 313 wird als ein temporärer Speicherbereich wie der Hauptspeicher oder Arbeitsbereich für die CPU 311 verwendet. Die HDD 314 ist eine Speichereinheit mit großer Kapazität, die HTML-Dateien, Java Script®-Dateien, Bilddaten, Textdaten, verschiedene Programme und dergleichen speichert. Das Netzwerk I/F 315 ist eine Schnittstelle zum Verbinden des Servers 120 mit dem Internet. Der Server 120 überträgt oder empfängt verschiedene Arten von Information an oder von einer anderen Vorrichtung (wie dem mobilen Endgerät110) über das Netzwerk I/F 315 bei Empfang einer Verarbeitungsanfrage von der anderen Vorrichtung.
-
[Softwarekonfiguration des Informationsverarbeitungssystems]
-
4 ist ein Software-Blockdiagramm des Informationsverarbeitungssystems gemäß dem vorliegenden Ausführungsbeispiel. Die Funktionseinheiten werden durch die CPU 211, die im ROM 212 oder der SSD 214 gespeicherte Steuerprogramme liest, oder durch die CPU 311, die im ROM 312 oder der HDD 314 gespeicherte Steuerprogramme liest, implementiert.
-
Eine Mobil-Anwendung 400 ist eine Anwendung, die auf dem mobilen Endgerät 110 installiert ist. Im Allgemeinen dienen einige Mobil-Anwendungen als eine Nativ-Anwendung, und andere führen eine Web-Anwendung aus, die in einem Server bereitgestellt wird. Eine Nativ-Anwendung arbeitet mit Anwendungs-Bildschirminformation, die auf einem mobilen Endgerät vorinstalliert ist, und kann Funktionen (Kamera, Zugriff auf Dateien im mobilen Endgerät und dergleichen) ausführen, die für das mobile Endgerät spezifisch sind. Die Nativ-Anwendung kann ohne Verbindung des mobilen Endgeräts mit einem Netzwerk arbeiten. Andererseits, um eine Web-Anwendung auszuführen, greift das mobile Endgerät jedes Mal über ein Netzwerk auf den Server zu, um die Anwendungs-Bildschirminformation und dergleichen zu erfassen, und zeigt die Information auf dem Webbrowser an. Die Web-Anwendung basiert auf Web-Technologie und wird im Server gehalten. Um die Web-Anwendung auszuführen, muss sich das mobile Endgerät mit einem Netzwerk verbinden und auf den Server zugreifen. Außerdem haben einige Mobil-Anwendungen eine Kombination aus sowohl der Funktion einer Nativ-Anwendung als auch der Funktion einer Web-Anwendung (nachfolgend als Hybrid-Anwendungen bezeichnet). Eine Hybrid-Anwendung enthält eine Web-Ebene, in der eine Web-Anwendung ausgeführt wird, indem auf den Server zugegriffen wird, und eine Nativ-Ebene, in der für das mobile Endgerät spezifische Funktionen ausgeführt werden, die in der Web-Ebene nicht verarbeitet werden können. Die folgende Beschreibung basiert auf der Annahme, dass die Mobil-Anwendung 400 eine Hybrid-Anwendung ist, die eine „Nativ“-Ebene und eine „Web“-Ebene aufweist.
-
Die Mobil-Anwendung 400 weist eine Kommunikationseinheit 410, eine Steuereinheit 411, eine Datenverwaltungseinheit 412 und eine Bildschirm-Anzeigeeinheit 413 auf und besteht aus einer Web-Ebene 414 und einer Nativ-Ebene 415. Die Kommunikationseinheit 410, die Steuereinheit 411 und die Bildschirm-Anzeigeeinheit 413 sind in einer jeweiligen der Web-Ebene 414 und der Nativ-Ebene 415 enthalten, und die Datenverwaltungseinheit 412 ist in der Nativ-Ebene 415 enthalten. Die in den Ebenen enthaltenen Funktionseinheiten sind nicht auf diese Einheiten beschränkt.
-
Die Kommunikationseinheit 410 fordert den Server 120 auf, verschiedene Prozesse auszuführen. Zum Beispiel überträgt die Kommunikationseinheit 410 eine für die Bildschirm-Anzeige notwendige Anfrage für Bildschirm-Layoutinformation (HTML-Datei, JavaScript®-Datei und dergleichen) an den Server 120 ansprechend auf eine Anfrage von der Mobil-Anwendung 400. Die Kommunikationseinheit 410 fordert auch Open-Source-Software (OSS)-Lizenzinformation an. Die Lizenzinformation enthält hier den Text der Lizenz für OSS (Textdatei oder dergleichen). Die Kommunikationseinheit 410 verwendet ein Protokoll wie „Representational State Transfer“ (REST) oder „Simple Object Access Protocol“ (SOAP), um mit dem Server 120 zu kommunizieren, kann aber ein anderes Kommunikationsmittel verwenden.
-
Die Steuereinheit 411 führt allgemeine Steuerungsprozesse wie z. B. das Ausgeben einer Kommunikationsanweisung, einer Bildschirm-Anzeigeanweisung und einer Datenverwaltungsanweisung aus, oder führt ein Steuerungsverfahren in der Mobil-Anwendung 400 aus. Zum Beispiel erfasst die Steuereinheit 411 zum Zeitpunkt des Starts der Mobil-Anwendung 400 Bildschirm-Layoutinformation vom Server 120 über die Kommunikationseinheit 410 und gibt eine Bildschirm-Anzeigeanweisung an die Bildschirm-Anzeigeeinheit 413 basierend auf der Bildschirm-Layoutinformation aus.
-
Die Datenverwaltungseinheit 412 verwaltet allgemeine Information die Mobil-Anwendung 400 betreffend, wie z. B. eine Endnutzerlizenzvereinbarung (EULA) der Mobil-Anwendung 400 und OSS-Lizenzinformation. In der vorliegend beispielhaften Ausführungsform speichert und verwaltet die Datenverwaltungseinheit 412 in Programmen den Text der Lizenz für mehrere OSS, die in der Nativ-Anwendung auf der Mobilseite verwendet werden (nachfolgend Nativ-Lizenzinformation), und den Text der Lizenz für mehrere OSS, die in der Web-Anwendung auf der Serverseite verwendet werden (nachfolgend Web-Lizenzinformation). Für die Lizenzinformation werden die neuesten Daten im Voraus in der Datenverwaltungseinheit 412 zum Zeitpunkt der Installation der Mobil-Anwendung gespeichert. Die in der Datenverwaltungseinheit 412 gespeicherte Nativ-Lizenzinformation wird, wenn nötig, zum Zeitpunkt der Aktualisierung der Mobil-Anwendung 400 aktualisiert. Die in der Datenverwaltungseinheit 412 gespeicherte Web-Lizenzinformation wird aktualisiert, wenn der Nutzer eine Anweisung zum Anzeigen der Lizenzinformation ausgibt und die neueste Lizenzinformation wird vom Server 120 über die Kommunikationseinheit 410 unter der Anweisung von der Steuereinheit 411 erfasst. In der vorliegend beispielhaften Ausführungsform werden die verschiedenen Daten in Form einer Textdatei verwaltet, aber das Verfahren zum Verwalten der Daten ist nicht darauf beschränkt. Außerdem ist die Art der verwalteten Daten nicht darauf beschränkt.
-
Die Bildschirmanzeigeeinheit 413 zeigt einen Benutzeroberflächen-(UI)-Bildschirm zum Annehmen von Benutzeroperationen auf einer Flüssigkristallanzeigeeinheit, die eine Touch-Panel-Funktion der Anzeige- und Bedieneinheit 220 aufweist, im mobilen Endgerät 110 an. Der Ul-Bildschirm ist hier ein Bildschirm, der vom Server 120 bereitgestellt wird, und ein Bildschirm, der im Voraus in der Mobil-Anwendung 400 gespeichert wird.
-
Der Server 120 weist eine Anfrage-Steuereinheit 431 und eine Datenverwaltungseinheit 432 auf und stellt Web-Anwendungen für externe Vorrichtungen bereit, die auf den Server 120 zugegriffen haben. Die Anfrage-Steuereinheit 431 ist im Standby-Modus in einem Zustand, in dem sie in der Lage ist, eine Anfrage von einer externen Vorrichtung zu empfangen. Bei Empfang einer Verarbeitungsanfrage weist der Server 120 die Datenverwaltungseinheit 432 an, eine Verarbeitung gemäß der Anfrage auszuführen. Die Datenverwaltungseinheit 432 speichert und verwaltet die Bildschirm-Layoutinformation und die Lizenzinformation von OSS, die auf der Serverseite verwendet werden. Auch im Falle einer Änderung des verwendeten OSS wird die Lizenzinformation aktualisiert. Ansprechend auf eine Anfrage von einem Webbrowser, der auf einer Informationsverarbeitungsvorrichtung wie etwa dem mobilen Endgerät 110 läuft, das über das Internet verbunden ist, gibt die Datenverwaltungseinheit 432 die Bildschirm-Layoutinformation oder die OSS-Lizenzinformation zurück, die für die Bildschirm-Anzeige notwendig sind. [Bildschirm-Übergang in der Mobil-Anwendung (die in der Lage ist, Information an den Server zu übertragen und von diesem zu empfangen)]
-
5 ist ein Diagramm, das ein Beispiel für einen Bildschirm-Übergang in der Mobil-Anwendung 400 in einem Zustand veranschaulicht, in dem sie in der Lage ist, Information an den Server 120 zu übertragen und von diesem zu empfangen. Die Mobil-Anwendung 400 ist eine Anwendung, die einen Drucker (nicht veranschaulicht) anweist, ein Bild, das durch die Kamera des mobilen Endgeräts 110 aufgenommen wurde, oder ein Bild, das im SSD 214 des mobilen Endgeräts 110 gespeichert wurde, über die durch den Server 120 bereitgestellten Bildschirme zu drucken. Die Kamerafunktion und die Funktion des Zugreifens auf eine Datei im mobilen Endgerät 110 werden in der Nativ-Ebene ausgeführt, und die Anzeige eines Bildschirms für den Benutzer, um eine Druckanweisung auszugeben, und die Ausführung der Druckanweisung werden in der Web-Ebene ausgeführt. Die Mobil-Anwendung 400 hat sowohl die Funktion einer Nativ-Anwendung als auch die Funktion einer Web-Anwendung. Somit ist es notwendig, auf der Mobil-Anwendung 400 sowohl die Lizenzinformation von OSS, die in der Nativ-Anwendung verwendet wird, als auch die Lizenzinformation von OSS, die in der Web-Anwendung verwendet wird, anzuzeigen.
-
Zuerst, wenn die Mobil-Anwendung 400 gestartet wird, erfasst die Mobil-Anwendung 400 vom Server 120 die für die Bildschirm-Anzeige notwendige Bildschirm-Layoutinformation und zeigt eine Webseite im Anzeigebereich eines Hauptbildschirms 500 an. Dann, wenn eine Menütaste 501 auf dem Hauptbildschirm 500 betätigt wird, findet der Bildschirmübergang zu einem Menübildschirm 510 statt. Auf dem Menübildschirm 510 wird ein Verknüpfungsmenü 511 angezeigt, das Verknüpfungen zur EULA enthält, die sich auf die Mobil-Anwendung 400, die Lizenz eines Drittanbieters und dergleichen bezieht. Die Verknüpfung zur Lizenz eines Drittanbieters ist eine Verknüpfung zum Anzeigen des Texts der Lizenz für die mehreren OSS, die in der Mobil-Anwendung 400 verwendet werden.
-
Als Nächstes, wenn Drittanbieterlizenz im Verknüpfungsmenü 511 gedrückt wird, findet der Bildschirmübergang zu einem Dokumentbildschirm 520 statt, auf dem eine Drittanbieterlizenz 521 angezeigt wird. 5 veranschaulicht ein Beispiel, bei dem die Drittanbieterlizenz im Verknüpfungsmenü 511 gedrückt wird. Wenn jedoch eine andere Verknüpfung gedrückt wird, findet der Übergang zu dem Bildschirm statt, der der gedrückten Verknüpfung entspricht. Die angezeigte Drittanbieterlizenz 521 enthält den Text der Lizenz für die mehreren OSS, die in der Nativ-Anwendung und der Web-Anwendung verwendet werden (Nativ-Lizenzinformation 522 und Web-Lizenzinformation 523). Die Nativ-Lizenzinformation wird in der Datenverwaltungseinheit 412 zum Zeitpunkt der Installation oder Aktualisierung der Mobil-Anwendung gespeichert. Die Web-Lizenzinformation kann auch in der Datenverwaltungseinheit 412 zum Zeitpunkt der Installation der Mobil-Anwendung gespeichert werden. Um den Text der Lizenz anzuzeigen, wird die in der Datenverwaltungseinheit 412 gespeicherte Lizenzinformation angezeigt. Zu diesem Zeitpunkt, wenn das mobile Endgerät 110 online und in der Lage ist, mit dem Server 120 zu kommunizieren, kommuniziert das mobile Endgerät 110 mit dem Server 120, um die Web-Lizenzinformation zu erfassen, und zeigt die erfasste Web-Lizenzinformation zusammen mit der vorab gespeicherten Nativ-Lizenzinformation an.
-
Auf diese Weise erfasst die Mobil-Anwendung 400 die Web-Lizenzinformation 523 vom Server 120 falls die Mobil-Anwendung 400 mit dem Server 120 zum Zeitpunkt der Anzeige der Lizenzinformation kommunizieren kann. Zu diesem Zeitpunkt kann die Mobil-Anwendung 400 die erfasste Web-Lizenzinformation 523 in der Datenverwaltungseinheit 412 speichern oder die in der Datenverwaltungseinheit 412 gespeicherte Web-Lizenzinformation mit der erfassten Web-Lizenzinformation 523 aktualisieren. Auf diese Weise kann die Mobil-Anwendung 400 die neueste Web-Lizenzinformation 523 anzeigen, wenn die Mobil-Anwendung 400 mit dem Server 120 kommunizieren kann.
-
Im Allgemeinen speichert eine Nativ-Anwendung Lizenzinformation darin und aktualisiert die gespeicherte Lizenzinformation zum Zeitpunkt der Aktualisierung der Anwendung. Wenn die Mobil-Anwendung 400 die Nativ-Lizenzinformation und die Web-Lizenzinformation darin wie die Nativ-Anwendung speichert, muss die Mobil-Anwendung 400 den Benutzer auffordern, die Anwendung mit jeder Änderung der Web-Lizenzinformation zu aktualisieren. Die Häufigkeit der Änderung des in der Web-Anwendung verwendeten OSS ist höher als die in der Nativ-Anwendung, das heißt, die Web-Lizenzinformation wird häufig geändert. Das Auffordern des Benutzers, die Anwendung wie mit der Nativ-Anwendung zu aktualisieren, wird dem Benutzer Unannehmlichkeiten bereiten. Somit ermöglicht es das Erfassen der Web-Lizenzinformation vom Server, wenn das mobile Endgerät online ist, unnötiges Aktualisieren zu vermeiden.
-
Im Allgemeinen speichert eine Web-Anwendung Web-Lizenzinformation in einem Server, so dass das mobile Endgerät auf den Server zugreift, um die Lizenzinformation zu erfassen. Wenn sowohl die Nativ-Lizenzinformation als auch die Web-Lizenzinformation der Mobil-Anwendung 400 im Server wie im Fall der Web-Anwendung gespeichert werden, erhöht dies das Volumen der Kommunikationsdaten und die Länge der Verarbeitungszeit, die zum Erfassen der Lizenzinformation notwendig ist. Somit ermöglicht es das Speichern der Nativ-Lizenzinformation in der Mobil-Anwendung zwischen der Nativ-Lizenzinformation und der Web-Lizenzinformation, das Volumen der Kommunikationsdaten und die Länge der zum Erfassen der Lizenzinformation notwendigen Verarbeitungszeit zu reduzieren.
-
[Bildschirmübergang in der Mobil-Anwendung (die nicht in der Lage ist, Information an den Server zu übertragen und von diesem zu empfangen)]
-
6 ist ein Diagramm, das ein Beispiel für einen Bildschirmübergang in der Mobil-Anwendung 400 in dem Zustand veranschaulicht, in dem sie nicht in der Lage ist, mit dem Server 120 zu kommunizieren.
-
Zuerst, wenn die Mobil-Anwendung 400 gestartet wird, zeigt die Mobil-Anwendung 400 einen Netzwerkverbindungsfehler-Bildschirm 600 an, der anzeigt, dass die Mobil-Anwendung 400 offline ist.
-
Wenn eine Menütaste 601 im Netzwerkverbindungsfehler-Bildschirm 600 gedrückt wird, findet der Bildschirmübergang zu einem Menübildschirm 610 statt. Auf dem Menübildschirm 610 wird ein Verknüpfungsmenü 611 angezeigt, das Verknüpfungen zur EULA enthält, die sich wie im Falle des Menübildschirms 510 auf die Mobil-Anwendung 400 und die Drittanbieterlizenz beziehen.
-
Als Nächstes, wenn eine beliebige Verknüpfung im Verknüpfungsmenü 611 gedrückt wird, findet der Bildschirmübergang zu einem Dokumentbildschirm 620 statt, der der gedrückten Verknüpfung entspricht. In 6 wird die Drittanbieterlizenz im Verknüpfungsmenü 611 gedrückt, und dann wird eine Drittanbieterlizenz 621 auf dem Dokumentbildschirm 620 angezeigt. Die angezeigte Drittanbieterlizenz 621 enthält den Text der Lizenz (Nativ-Lizenzinformation 622 und Web-Lizenzinformation 623) wie im Fall der Drittanbieterlizenz 521.
-
Wenn die Mobil-Anwendung 400 nicht in der Lage ist, mit dem Server 120 zu kommunizieren, wie etwa wenn die Mobil-Anwendung 400 nicht mit dem Internet verbunden werden kann oder die Mobil-Anwendung 400 ausgeschaltet ist, zeigt die Mobil-Anwendung 400 die in der Steuereinheit 411 gespeicherte Lizenzinformation an. Das heißt, die Information in der Steuereinheit 411 wird nicht aktualisiert. Wenn die in der Steuereinheit 411 gespeicherte Web-Lizenzinformation aktualisiert wurde, weil die Lizenzinformation in der Vergangenheit vom Benutzer wie oben beschrieben online angezeigt wurde, kann die aktualisierte Web-Lizenzinformation angezeigt werden.
-
Das heißt, durch das Speichern der in einer Situation, in der das mobile Endgerät mit dem Server kommunizieren kann, erfassten Web-Lizenzinformation in das mobile Endgerät, kann die neuest-mögliche Information sogar offline angezeigt werden.
-
Für die Nativ-Lizenzinformation 522 oder 622 wird die in der Datenverwaltungseinheit 412 gespeicherte Information unabhängig vom Netzwerkstatus angezeigt. Wenn der Text der Nativ-Lizenz geändert wird, muss die Mobil-Anwendung aktualisiert werden, weil die Änderung des Texts der Nativ-Lizenz immer mit einer Änderung der Konfiguration der Mobil-Anwendung einhergeht. Somit wird der Text der Nativ-Lizenz zum Zeitpunkt der Aktualisierung der Mobil-Anwendung geändert.
-
[Software-Verarbeitung und Flussdiagramm in der Ersten Beispielhaften Ausführungsform]
-
7 ist ein Flussdiagramm, das Einzelheiten eines Prozesses zum Anzeigen des Texts der Lizenz in der Mobil-Anwendung 400 veranschaulicht. Die Schritte im Flussdiagramm werden durch die CPU 211 implementiert, die im ROM 212 und der SSD 214 gespeicherte Steuerprogramme liest und ausführt. Der Prozess wird nun ausführlich beschrieben.
-
Dieser Prozess wird gestartet, indem detektiert wird, dass der Menübildschirm 510 oder 610 in der Mobil-Anwendung 400 angezeigt wird.
-
In Schritt S701 bestimmt die Bildschirmanzeigeeinheit 413 der Mobil-Anwendung 400, ob eine beliebige Verknüpfung, die im Verknüpfungsmenü 511 oder 611 enthalten ist, das auf dem Menübildschirm 510 oder 610 angezeigt wird, gedrückt wurde. Wenn die Bildschirmanzeigeeinheit 413 bestimmt, dass eine beliebige Verknüpfung gedrückt wurde (JA in Schritt S701), geht die Verarbeitung zu Schritt S702 über. Wenn die Bildschirmanzeigeeinheit 413 bestimmt, dass keine Verknüpfung gedrückt wurde (NEIN in Schritt S701), kehrt die Verarbeitung zu Schritt S701 zurück. In der vorliegend beispielhaften Ausführungsform ist die beliebige Verknüpfung die in 5 oder 6 veranschaulichte „Drittanbieterlizenz“. Die auswählbare Information ist jedoch nicht darauf beschränkt.
-
In Schritt S702 überträgt die Kommunikationseinheit 410 eine Anfrage zur Übertragung der Web-Lizenzinformation an den Server 120 wenn die Kommunikationseinheit 410 der Mobil-Anwendung 400 mit dem Server 120 kommunizieren kann.
-
In Schritt S703 bestimmt die Steuereinheit 411 der Mobil-Anwendung 400, ob die Web-Lizenzinformation ansprechend auf die Erfassungsanfrage in Schritt S702 erfasst wurde. Wenn die Steuereinheit 411 bestimmt, dass die Web-Lizenzinformation erfasst wurde (JA in Schritt S703), geht die Verarbeitung zu Schritt S704 über. Wenn die Steuereinheit 411 bestimmt, dass die Web-Lizenzinformation nicht erfasst wurde (NEIN in Schritt S703), geht die Verarbeitung zu Schritt S705 über.
-
In Schritt S704 speichert die Steuereinheit 411 der Mobil-Anwendung 400 die vom Server 120 über die Kommunikationseinheit 410 empfangene Web-Lizenzinformation in der Datenverwaltungseinheit 412 oder aktualisiert die Information in der Datenverwaltungseinheit 412 mit der vom Server 120 empfangenen Web-Lizenzinformation. Dementsprechend kann, selbst wenn die Lizenzinformation des in der Web-Anwendung auf der Serverseite 120 verwendeten OSS aktualisiert wurde, die neueste Lizenzinformation in der Datenverwaltungseinheit 412 gespeichert werden. Die Verarbeitung in Schritt S704 muss nicht notwendigerweise jedes Mal ausgeführt werden, sondern kann nur in einem Fall ausgeführt werden, in dem ein vorbestimmter Zeitraum seit der vorherigen Ausführung verstrichen ist, oder in einem Fall, in dem eine Speicheranweisung vom Benutzer ausgegeben wurde.
-
In Schritt S705 erfasst die Steuereinheit 411 der Mobil-Anwendung 400 die Web-Lizenzinformation von der Datenverwaltungseinheit 412.
-
In Schritt S706 erfasst die Steuereinheit 411 der Mobil-Anwendung 400 die Nativ-Lizenzinformation von der Datenverwaltungseinheit 412.
-
In Schritt S707 kombiniert die Steuereinheit 411 der Mobil-Anwendung 400 die in den Schritten S705 und S706 erfasste Lizenzinformation und zeigt die kombinierte Lizenzinformation auf der Bildschirmanzeigeeinheit 413 als Ergebnis des Drückens der Verknüpfung in Schritt S701 an (die in 5 veranschaulichte Verknüpfung 521 oder die in 6 veranschaulichte Verknüpfung 621).
-
Wie oben unter Bezugnahme auf das Flussdiagramm beschrieben erfasst die Mobil-Anwendung 400 die Web-Lizenzinformation vom Server 120 jedes Mal wenn die Lizenzinformation angezeigt wird wenn die Mobil-Anwendung 400 mit dem Server 120 kommunizieren kann. Andererseits, wie für die Lizenzinformation der Nativ-Anwendung wird die im Voraus in der Mobil-Anwendung gespeicherte Lizenzinformation (wie zum Zeitpunkt der Installation der Mobil-Anwendung) erfasst und angezeigt. Das heißt, zum Zeitpunkt des Anzeigens der Information einer Nativ-Anwendung und einer Web-Anwendung in einer Hybrid-Anwendung wird die Information über die Nativ-Anwendung von der Hybrid-Anwendung erfasst und die Information über die Web-Anwendung wird jedes Mal vom Server erfasst.
-
Durch das Speichern der vom Server 120 erfassten Web-Lizenzinformation in der Mobil-Anwendung kann die neuest-mögliche Lizenzinformation in der Mobil-Anwendung sogar in der Offline-Umgebung angezeigt werden.
-
Ein Prozess zum Aktualisieren der Nativ-Lizenzinformation in der Mobil-Anwendung 400 wird unter Bezugnahme auf 8 beschrieben. 8 ist ein Flussdiagramm eines Prozesses, in dem das mobile Endgerät 110 eine Aktualisierungsanfrage der Mobil-Anwendung 400 empfängt und das Aktualisieren auszuführt. Die Schritte im Flussdiagramm werden durch die CPU 211 implementiert, die die im ROM 212 oder der SSD 214 gespeicherten Steuerprogramme liest und ausführt.
-
In Schritt S801 bestimmt die CPU 211, ob eine Aktualisierungsanfrage der Mobil-Anwendung 400 empfangen wurde. Wenn die CPU 211 bestimmt, dass die Aktualisierungsanfrage empfangen wurde (JA in Schritt S801), geht die Verarbeitung zu Schritt S802 über. Wenn die CPU 211 bestimmt, dass keine Aktualisierungsanfrage empfangen wurde (NEIN in Schritt S801), wiederholt die CPU 211 Schritt S801. In Schritt S802 benachrichtigt die CPU 211 den Benutzer, dass die Mobil-Anwendung 400 aktualisiert werden muss. In Schritt S803 bestimmt die CPU 211, ob eine Anweisung zum Bestimmen, ob die Aktualisierungsanweisung der Mobil-Anwendung 400 akzeptiert wurde, empfangen wurde. Wenn die CPU 211 bestimmt, dass die Anweisung akzeptiert wurde (JA in Schritt S803), geht die Verarbeitung zu S804 über. Wenn die CPU 211 bestimmt, dass keine Anweisung akzeptiert wurde (NEIN in Schritt S803), wiederholt die CPU 211 Schritt S803. In Schritt S804 aktualisiert die CPU 211 die Mobil-Anwendung 400. Zu diesem Zeitpunkt wird die in der Datenverwaltungseinheit 412 gespeicherte Nativ-Lizenzinformation aktualisiert.
-
Wie oben unter Bezugnahme auf das Flussdiagramm beschrieben, kann die Mobil-Anwendung 400 in einem Fall, in dem die Mobil-Anwendung 400 aktualisiert werden muss, durch Annehmen einer Benutzeroperation aktualisiert werden. Zum Zeitpunkt der Aktualisierung der Mobil-Anwendung 400 kann die Nativ-Lizenzinformation in der Anwendung aktualisiert werden. In diesem Beispiel wird die Mobil-Anwendung 400 bei Annahme einer Benutzeroperation aktualisiert. Wenn jedoch eine automatische Aktualisierung voreingestellt ist, kann die Mobil-Anwendung 400 auch automatisch ohne Annahme einer Benutzeroperation aktualisiert werden. Die Lizenzinformation in der Anwendung, die zum Zeitpunkt der Aktualisierung der Anwendung aktualisiert werden soll, ist nicht auf die Nativ-Lizenzinformation beschränkt, sondern auch die Web-Lizenzinformation kann aktualisiert werden.
-
Gemäß der oben beschriebenen beispielhaften Ausführungsform überträgt die Anwendung eine Anfrage zum Erfassen der Lizenzinformation der Web-Anwendung und liest gleichzeitig die im Voraus in der Anwendung gespeicherte Lizenzinformation der Nativ-Anwendung, wenn eine Anwendung mit sowohl der Funktion einer Nativ-Anwendung als auch der Funktion einer Web-Anwendung eine Anweisung zum Anzeigen der Lizenzinformation empfängt. Dann zeigt die Anwendung die Lizenzinformation der Web-Anwendung, die ansprechend auf die Erfassungsanfrage erfasst wurde, und die gelesene Lizenzinformation der Nativ-Anwendung an.
-
[Software-Verarbeitung und Flussdiagramm in der Zweiten Beispielhaften Ausführungsform]
-
Gemäß des oben beschriebenen Verfahrens zum Anzeigen der Lizenzinformation erfasst die Mobil-Anwendung 400 die Web-Lizenzinformation auf der Serverseite vom Server 120, wenn der Benutzer die Mobil-Anwendung 400 anweist, den Text der Lizenz vom Menübildschirm anzuzeigen. Somit besteht der Nachteil, dass die in der Datenverwaltungseinheit 412 gespeicherte Web-Lizenzinformation nicht aktualisiert wird, es sei denn, der Benutzer weist zum Anzeigen der Lizenzinformation an.
-
Somit wird ein Verfahren zum Lösen des oben genannten Nachteils beschrieben.
-
9 ist ein Flussdiagramm, das einen Aktualisierungsprozess der Lizenzinformation in einer Mobil-Anwendung 400 gemäß einer zweiten beispielhaften Ausführungsform ausführlich veranschaulicht. Die Schritte im Flussdiagramm werden durch eine CPU 211 implementiert, die in einem ROM 212 oder einer SSD 214 gespeicherte Steuerprogramme liest und ausführt. Nachfolgend wird dieser Prozess ausführlich beschrieben.
-
Dieser Prozess wird gestartet, indem detektiert wird, dass die Mobil-Anwendung 400 im Hintergrund läuft. Der Prozess im Flussdiagramm wird wiederholt in bestimmten Zeitintervallen (zum Beispiel jeden oder jeden zweiten Tag) ausgeführt, soweit die Mobil-Anwendung 400 im Hintergrund läuft.
-
In Schritt S901 bestimmt eine Steuereinheit 411 der Mobil-Anwendung 400, ob ein Hintergrundprozess möglich ist. Wenn die Steuereinheit 411 bestimmt, dass der Hintergrundprozess möglich ist (JA in Schritt S901), geht die Verarbeitung zu Schritt S902 über. Wenn die Steuereinheit 411 bestimmt, dass der Hintergrundprozess nicht möglich ist (NEIN in Schritt S901), kehrt die Verarbeitung zu Schritt S901 zurück.
-
In Schritt S902 überträgt die Kommunikationseinheit 410 der Mobil-Anwendung 400 eine Anfrage zur Erfassung von Web-Lizenzinformation an den Server 120.
-
In Schritt S903 bestimmt die Steuereinheit 411 der Mobil-Anwendung 400, ob die Web-Lizenzinformation ansprechend auf die Erfassungsanfrage in Schritt S902 erfasst wurde. Wenn die Steuereinheit 411 bestimmt, dass die Web-Lizenzinformation erfasst wurde (JA in Schritt S903), geht die Verarbeitung zu Schritt S904 über. Wenn die Steuereinheit 411 bestimmt, dass die Web-Lizenzinformation nicht erfasst wurde (NEIN in Schritt S903), wird die Verarbeitung beendet.
-
In Schritt S904 speichert die Steuereinheit 411 der Mobil-Anwendung 400 die vom Server 120 über die Kommunikationseinheit 410 empfangene Web-Lizenzinformation in der Datenverwaltungseinheit 412 oder aktualisiert die Information in der Datenverwaltungseinheit 412 mit der vom Server 120 empfangenen Web-Lizenzinformation.
-
Das Verfahren zum Aktualisieren der Lizenzinformation der Mobil-Anwendung 400 wurde beschrieben. Dies ermöglicht es, die Web-Lizenzinformation in der Anwendung in bestimmten Zeitintervallen zu aktualisieren, selbst in einem Fall, in dem der Benutzer die Lizenzinformation noch nicht angezeigt hat. Dementsprechend kann, selbst offline, die neueste online erfasste Web-Lizenzinformation angezeigt werden.
-
In der vorliegend beispielhaften Ausführungsform wurde beispielhaft der Fall beschrieben, in dem die Mobil-Anwendung 400 die Lizenzinformation in bestimmten Zeitintervallen aktualisiert, während sie im Hintergrund läuft. Der Zeitpunkt für die Aktualisierung ist jedoch nicht darauf beschränkt. Die Mobil-Anwendung 400 kann die Web-Lizenzinformation jedes Mal aktualisieren, wenn die Mobil-Anwendung 400 gestartet wird, oder der Server 120 kann eine Benachrichtigung an die Mobil-Anwendung 400 übertragen, die angibt, dass es notwendig ist, Lizenzinformation zu aktualisieren.
-
In den oben beschriebenen beispielhaften Ausführungsformen wurde beispielhaft der Text der Lizenz für OSS angezeigt. Der anzuzeigende Inhalt ist jedoch nicht auf den Text der Lizenz für OSS beschränkt. Zum Beispiel sind die oben beschriebenen beispielhaften Ausführungsformen auch auf einen Fall anwendbar, in dem eine EULA oder dergleichen angezeigt wird. Ferner enthält die vorliegende Erfindung Systeme und deren Funktionen, die konfiguriert sind, indem die oben beschriebenen beispielhaften Ausführungsformen entsprechend kombiniert werden.
-
Andere Ausführungsformen
-
Ausführungsform(en) der vorliegenden Erfindung können auch durch einen Computer eines Systems oder einer Vorrichtung realisiert werden, der computerausführbare Anweisungen (z.B. ein oder mehrere Programme) ausliest und ausführt, die auf einem Speichermedium aufgezeichnet sind (das auch vollständiger als „nicht-flüchtiges computerlesbares Speichermedium“ bezeichnet werden kann), um die Funktionen einer oder mehrerer der oben beschriebenen Ausführungsform(en) auszuführen, und/oder der eine oder mehrere Schaltungen (z.B. anwendungsspezifische integrierte Schaltung (ASIC)) enthält, um die Funktionen einer oder mehrerer der oben beschriebenen Ausführungsform(en) auszuführen, und durch ein Verfahren, das durch den Computer des Systems oder der Vorrichtung ausgeführt wird, indem zum Beispiel die computerausführbaren Anweisungen aus dem Speichermedium ausgelesen und ausgeführt werden, um die Funktionen einer oder mehrerer der oben beschriebenen Ausführungsform(en) auszuführen, und/oder die eine oder mehreren Schaltungen gesteuert werden, um die Funktionen einer oder mehrerer der oben beschriebenen Ausführungsform(en) auszuführen. Der Computer kann einen oder mehrere Prozessoren (z.B. eine zentrale Verarbeitungseinheit (CPU)), eine Mikroverarbeitungseinheit (MPU)) umfassen und kann ein Netzwerk von separaten Computern oder separaten Prozessoren enthalten, um die computerausführbaren Anweisungen auszulesen und auszuführen. Die computerausführbaren Anweisungen können dem Computer beispielsweise von einem Netzwerk oder dem Speichermedium bereitgestellt werden. Das Speichermedium kann beispielsweise eine oder mehrere von einer Festplatte, einem Direktzugriffsspeicher (RAM), einem Nur-Lese-Speicher (ROM), einen Speicher von verteilten Computersystemen, einer optischen Platte (wie einer Compact Disc (CD)), einer „Digital Versatile Disc“ (DVD) oder einer „Blu-ray Disc“ (BD)™, einer Flash-Speichervorrichtung, einer Speicherkarte und dergleichen enthalten.
-
Während die vorliegende Erfindung unter Bezugnahme auf Ausführungsbeispiele beschrieben wurde, ist die Erfindung nicht auf die offenbarten Ausführungsbeispiele beschränkt zu verstehen.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-